通过 Tommaso 的媒体查询和一点插件+theme.js 的修改,我得到了最终结果。现在对话框也会在窗口调整大小时调整大小。打开所有需要的 plugin.js 并在对话框打开函数中另存为 plugin.min.js 向对话框窗口添加一个 uniqe id。现在打开 theme.js (modern) 并保存为 theme.min.js。
并找到
function WindowManagerImpl (editor) {
var open = function (args, params, closeCallback) {
在开括号后放上你的 ifs 和 elses。首先,我放置了一个窗口大小循环:
if(document.documentElement.clientWidth <=585){
dialogweite=(document.documentElement.clientWidth/100)*94;
dialoghoehe=(document.documentElement.clientHeight/100)*70;
}
if(document.documentElement.clientWidth > 585){
dialogweite=(document.documentElement.clientWidth/100)*70;
dialoghoehe=(document.documentElement.clientHeight/100)*60;
if(dialogweite > 1000){
dialogweite=1000;
}
if(dialoghoehe > 700){
dialoghoehe=700;
}
}
之后我把我的 ifs 例如:
if(args.id === "tinyfilema") {
args.width = document.getElementById("newschange").offsetWidth;
args.height = dialoghoehe+50;
}
等之后
win.on('close', function () {
closeCallback(win);
});
我插入了一个窗口调整大小功能
window.onresize = function () {
if(document.documentElement.clientWidth <=585){
dialogweite=(document.documentElement.clientWidth/100)*94;
dialoghoehe=(document.documentElement.clientHeight/100)*70;
}
if(document.documentElement.clientWidth > 585){
dialogweite=(document.documentElement.clientWidth/100)*70;
dialoghoehe=(document.documentElement.clientHeight/100)*60;
if(dialogweite > 1000){
dialogweite=1000;
}
if(dialoghoehe > 700){
dialoghoehe=700;
}
}
var plusi = 88;
var die1 =document.getElementById("newschange").offsetWidth;
if(args.id === "tinyfilema") {
win.resizeTo(die1, dialoghoehe+plusi);
}
}
给出的例子是最新的 RESPONSIVE 文件管理器
我也为插件执行此操作:preview、charmap、codesample、code(在我的情况下为 codemirror)和来自 responsiv 文件管理器创建者的 easyColorPicker。
对于一些插件,我必须多做一点 css。我喜欢它,也许有人会觉得它有帮助
顺便提一句。我使用 bootstrap4 和 document.getElementById("newschange").offsetWidth 是实现编辑器的 div。出于某种原因,在小型移动设备上,网站在某些插件对话框中滚动到页面底部。在这些插件上,我在包含滚动高度的打开对话框上设置了一个变量。在关闭时,我从变量滚动回给定的滚动高度。