我正在使用 Boostrap (2.3.1) Modal 来显示表单(那些加载了 ajax)。但是,当我尝试替换由“显示”事件和CKEDITOR.replace(id)
(CKEditor 4.2)触发的文本区域时,它不会在 IE 9 中被替换(Firefox 和 Chrome 都可以)。
如果我设置了超时,它至少会取代您第二次调用对话框:
$("#bok-modal-form").on("shown", function() {
$(this).find(".modal-body").find(".bokCKE").each( function() {
var id = $(this).attr("id");
if( CKEDITOR.instances[id] ) CKEDITOR.instances[id].destroy(true);
window.setTimeout(function() {
CKEDITOR.replace(id);
}, 1000);
});
});
否则只有第二次 ie 调试器显示未设置“文档”的错误,将我指向以下内容(@ a.editable(new j(a,e.$.contentWindow.document.body)); )。
不太确定我在这里做错了什么?
CKEDITOR 没有第一次替换似乎是显示事件的问题。在即模态体仍然是空的。我用 setTimeout (300) 包围了每个循环,它似乎有效(需要更多测试)。
更新:这成功了。