我在ckeditor中粘贴了元素的get元素有问题。 在ck iframe我有两个盒子。
<div class="box"> content1 </div>
<div class="box"> content2 </div>
插件看起来像
CKEDITOR.plugins.add('containers', {
requires: 'widget',
init: function(editor) {
editor.addFeature(editor.widgets.registered.containers);
editor.on('paste', function(evt) {
var contact = evt.data.dataTransfer.getData('contact');
if (!contact) {
return;
}
evt.data.dataValue = contact.html;
});
} });
在添加新的html之前,我想知道目标元素的类,以防止drop元素到其他框ex。没有班级“盒子”。
也许有人建议解决这个问题
答案 0 :(得分:0)
如果您想阻止paste
事件,可以使用cancel
变量的evt
功能。
要检查放置的位置并查看该元素是否包含特定类,您应该使用范围功能:
evt.editor.getSelection().getRanges()
以下是一个组合示例:
sc = evt.editor.getSelection().getRanges()[0].startContainer
if (!sc.getParent().hasClass('box')) {
evt.cancel()
return;
}