在Clipboard插件的文档http://docs.ckeditor.com/#!/guide/dev_clipboard中,据说编辑器会监听dragover事件,但CKEDITOR.editor.dragover不可用。
如何在编辑器中收听dragover事件?
答案 0 :(得分:2)
CKEditor监听dragover
事件,以防止在drop上重新加载页面,并向用户显示他无法删除某些元素(工具栏,对话框等)。它不会触发editor#dragover
。
如果您想收听此事件,可以附加您对本机对象的聆听。请注意,此对象在不同的浏览器和编辑器类型上会有所不同。它可以是document
或可编辑元素(body
,div
等)。要使用getDropTarget方法获取正确的元素。当您将编辑器切换到源模式时也将删除该元素,并且当您切换回可编辑模式时将创建新元素,因此使用attachListener方法和contentDom事件而不是简单{ {1}}方法。代码如下所示:
on
如果您editor.on( 'contentDom', function() {
var dropTarget = CKEDITOR.plugins.clipboard.getDropTarget( editor );
editor.editable().attachListener( dropTarget, 'dragover', function( evt ) {
// Your listener code here...
} );
} );
普遍有用,请在http://dev.ckeditor.com/上为其创建一张票。