我正在使用CKEditor,我想在CKEditor iframe窗口的onClick
事件上执行一些任务。即CKEditor的可编辑区域。
CKEDITOR.instances['ckEditor'].on('contentDom', function() {
this.document.on('click', function(event){
// calling some other function or some logic
});
});
但是,上面的代码只在我第一次点击CKEditor iframe时才有效。为什么这样?点击html页面的其他元素然后点击CKEditor iframe后,它再也无法工作了。
答案 0 :(得分:2)
请尝试在某些默认样本上使用以下代码。基本上,如果您已将click
事件附加到编辑器editable
并且您正在使用contentDom
事件,那么即使在切换到源模式并返回实际位置之后,也应该触发click
的事件处理程序旧的iframe被销毁,全新的iframe被创建。
var editor = CKEDITOR.replace( 'editor1', {});
editor.on( 'pluginsLoaded', function( event ) {
editor.on( 'contentDom', function( evt ) {
editor.editable().attachListener( editor.editable(), 'click', function( e ){
console.log( 'click' );
} );
} );
} );