解决方案更新
在花了一些时间搜索之后,我想我可以解决这个问题。对我来说,使用模态对话框的唯一特点是它可以防止从它后面的元素访问。我发现它与使用带有覆盖层的非模态对话框一样。叠加层只是起到了作为模态对话框的作用(尽管它不是全功能的模态)。
所以这是我的解决方案,在初始化对话框之前,我在它之前插入一个 div 元素并将ui-widget-overlay类赋予 div。它使用.insertBefore()方法完成。然后,在对话框“关闭”事件中,我删除了该覆盖 div。对话框 ' modal ' 选项设置为false。通过使用此解决方案,CKEditor 弹出窗口工作正常,因为只有一个模式对话框(CKEditor 弹出窗口)。
这是jsfiddle中的全部代码。希望这可以帮助。
我正在使用 jQuery 来显示一个对话框。我将此对话框设置为模态模式。在该对话框中,我包含一个文本区域,然后将与 CKEditor 一起使用。当我显示对话框时,CKEditor 很好地转换了文本区域。但是当尝试包含图像时(CKEditor 为输入显示 ITS OWN DIALOG),我无法使用 URL 输入。
这是我初始化对话框的代码:
var $dialogJurnal = $("#dialog").dialog({
autoOpen: false,
height: 630,
width: 'auto',
maxHeight: 630,
resize: 'auto',
modal: true
});
使用该配置,我无法单击文本框并输入。
然后我发现,如果我将模式设置为 false,那么它应该可以工作。
这是代码:
var $dialogJurnal = $("#dialog").dialog({
autoOpen: false,
height: 630,
width: 'auto',
maxHeight: 630,
resize: 'auto',
modal: false
});
使用该代码,一切正常,我可以单击文本框并输入。
因为我需要启用模态模式,所以这成为我的问题。我认为这是因为 jQuery 对话框(或类似)中的 z-index 阻止了 CKEditor 输入对话框。有没有人可以帮助我?