Ckeditor事件未在动态创建的div上触发

时间:2018-12-19 17:38:11

标签: javascript jquery ckeditor

我正在使用CKEditor4。我在ckeditor4中使用了 divarea 插件,因为我不想在iframe中使用ckeditor实例,我希望编辑器部分使用 DIV 。请看以下屏幕截图:

默认情况下,创建ckeditor实例时显示以下html:

enter image description here

从图像中可以很容易地看出,iframe是在 div“ cke_1-contents” 内部创建的,但是当我使用 divarea 插件时,然后是 div

如下图所示,在 div“ cke_1_contents” 内部创建了具有“ cke_wysiwyg_div ”类的strong>

enter image description here

现在,我在javascript / jquery的帮助下设法以某种方式创建了class =“ cke_wysiwyg_div”的多个div,这意味着HTML现在是:

<div id="cke_1_contents" class="cke_contents cke_reset" role="presentation" style="height: 700px;">
       <div class="cke_wysiwyg_div cke_reset cke_enable_context_menu cke_editable cke_editable_themed cke_contents_ltr cke_show_borders" hidefocus="true" tabindex="0" spellcheck="false" style="position: relative;" role="textbox" aria-multiline="true" aria-label="Rich Text Editor, editor1" title="Rich Text Editor, editor1" aria-describedby="cke_61" contenteditable="true"><p>my div</p>
       </div>
       <div class="cke_wysiwyg_div cke_reset cke_enable_context_menu cke_editable cke_editable_themed cke_contents_ltr cke_show_borders" hidefocus="true" tabindex="0" spellcheck="false" style="position: relative;" role="textbox" aria-multiline="true" aria-label="Rich Text Editor, editor1" title="Rich Text Editor, editor1" aria-describedby="cke_61" contenteditable="true"><p>my div</p>
       </div>
       <div class="cke_wysiwyg_div cke_reset cke_enable_context_menu cke_editable cke_editable_themed cke_contents_ltr cke_show_borders" hidefocus="true" tabindex="0" spellcheck="false" style="position: relative;" role="textbox" aria-multiline="true" aria-label="Rich Text Editor, editor1" title="Rich Text Editor, editor1" aria-describedby="cke_61" contenteditable="true"><p>my div</p>
       </div>
        <span id="cke_61" class="cke_voice_label">Press ALT 0 for help</span>
</div>

根据上面的html,div“ cke_1_contents”内有三个div。当我使用ckeditor的更改事件时,如下所示:

CKEDITOR.instances.editor1.on('change', function() {
       // some code here
});

change事件仅在第一个div上触发,而不会在其他动态创建的div(第二个和第三个div)上触发。我怎样才能做到这一点?有什么办法可以触发其他div编辑器副本上的change事件?

0 个答案:

没有答案