对于我工作的应用程序,用户可以使用的CKEditor编辑文本内联。 最近,我已经包括了2点额外的插件,我修改:stylescombo和比迪烟。 对于这两个,我只是给它一个新的名字,并修改点击文本时会发生什么。
当用户点击文本块上进行编辑,我会动态加载的CKEditor到这样的:
HTML: <div id="text-content">sample text</div>
JS: var $text = $("#text-content");
$text.attr("contenteditable", true);
CKEDITOR.disableAutoInline = true;
...
// toolbarOptions is an array of toolbar options
var editor = CKEDITOR.inline("text-content", {toolbar: toolbarOptions});
当用户从CKEditor的点击了,我会破坏这样的编辑器:
editor.destroy(true);
editor = null;
$("#text-content").removeAttr("contenteditable");
现在,这一切工作正常,第一次,但是当我试图再次编辑文本内容时,CKEditor的失败,不用任何错误加载。 我控制台日志的“主编”的变量,我看到被“卸载”编辑器的状态。 一些调试后,我发现,如果我不加载2个定制的插件之一以上时,编辑器可以被破坏后重装。 任何想法,为什么那些2个插件是影响内联的CKEditor的重装?
演示: http://jsfiddle.net/22A6F/