CKEDITOR dataFilter在删除时应用规则

CKEDITOR dataFilter在删除时应用规则,ckeditor,Ckeditor,我试图为插入编辑器的每个图像标记设置一个样式,将其宽度设置为500px(例如) 到目前为止,如果我从剪贴板粘贴图像,它可以正常工作,但对于拖放事件不起作用,dataFilter没有应用规则 这是我的密码: CKEDITOR.on('instanceReady', function (ev) { //Works on paste from clipboard ev.editor.dataProcessor.dataFilter.addRules({

我试图为插入编辑器的每个图像标记设置一个样式,将其宽度设置为500px(例如)

到目前为止,如果我从剪贴板粘贴图像,它可以正常工作,但对于拖放事件不起作用,dataFilter没有应用规则

这是我的密码:

CKEDITOR.on('instanceReady', function (ev) {

            //Works on paste from clipboard
            ev.editor.dataProcessor.dataFilter.addRules({
                elements: {
                    img: function(e) {
                        e.attributes.style = 'width: 500px;';
                    }
                }
            });

            ev.editor.dataProcessor.htmlFilter.addRules({
                elements: {
                    img: function(e) {
                        e.attributes.style = 'width: 500px;';
                    }
                }
            });

            ev.editor.on('paste', function(evt) {
                //do something maybe
            });

            ev.editor.document.on('drop', function (evt) {
                //do something maybe
            });
        });
几天前发布,它带来的一个功能是与本机拖放的集成。新系统功能非常强大,包含许多新功能,但您最感兴趣的是,删除的内容通过事件传递,然后像往常一样,通过事件插入编辑器。此方法使用运行
编辑器.htmlDataProcessor.dataFilter
编辑器.htmlDataProcessor.toHtml()
。换句话说,您不需要做任何事情,所有粘贴和删除的内容都将自动通过数据过滤器

因此,我建议等待CKEditor 4.5.0的最终版本。当然,你现在可以使用测试版


另外,我建议不要尝试使用旧版本的CKEditor并尝试手动处理拖放(如您所示),因为根据我们自己的经验,由于缺少API(例如,从拖放位置获取范围的能力)以及不同的浏览器对拖放的支持,这是非常困难的。我们花了好几个月的时间雕刻出了一些我们可以发布的东西:)。

太棒了!,关于这个问题:我注意到,在Chrome中,我不能在CKEDITOR中粘贴或删除图像,但我实际上可以通过一个非常简单的脚本获得它,新版本是否支持从Chrome中粘贴图像?您是否阅读了I链接,请参阅或?;)Sry,我当时正在工作,没有太多时间,我来看看:DHello,回到这个问题,当我拖放/粘贴img时,这在CKEditor 4.5.0中不起作用。。。文档中的img具有原始宽度