如何在CKEditor上禁用粘贴内联样式?

时间:2017-08-18 05:07:50

标签: ckeditor

粘贴到CKEditor时,如何禁用样式的内容?

概述,我尝试修复DOMPdf上的宽度样式,但粘贴到CKEditor的内联样式搞乱了我在DOMPdf中设置的样式。

我已经应用了https://docs.ckeditor.com/#!/guide/dev_disallowed_content发布的内容。

到目前为止,这里是我尝试的一些内容 CKEDITOR.config.disallowedContent = "table(width)"CKEDITOR.config.disallowedContent = "table[style]"

但是当我从word文档或自定义的html字符串进行复制和粘贴时,仍然会粘贴样式或宽度。有小费吗?谢谢!

1 个答案:

答案 0 :(得分:1)

首先,如果要从表中删除width样式,则需要使用: CKEDITOR.config.disallowedContent = 'table{width}';

规则CKEDITOR.config.disallowedContent = "table(width)"会从表格中移除width类,CKEDITOR.config.disallowedContent = "table[style]"将不会执行任何操作,因为样式在{}中定义,而不在[]中定义

在此处详细了解允许的内容规则格式:https://docs.ckeditor.com/#!/guide/dev_allowed_content_rules

  

但是当我从word文档或自定义的html字符串中复制并粘贴时,   样式或宽度仍然会粘贴。

请打开Full preset editor sample并尝试加粗文字或使用样式下拉菜单中的某些内嵌样式。您会看到使用strongcodebigspan等标记。为了禁止它们,您的ACF规则需要看起来像这样:例如:

var editor = CKEDITOR.replace( 'editor1', {
    disallowedContent : 'span;code;strong;big'
});

请注意,上述规则会在CKEditor中完全禁用spanstrongcodebig标记。如果您仍希望在编辑器中使用这些标记但仅在粘贴期间过滤内容,则应使用粘贴事件和正则表达式来更改传入的HTML: