粘贴到CKEditor时,如何禁用样式的内容?
概述,我尝试修复DOMPdf上的宽度样式,但粘贴到CKEditor的内联样式搞乱了我在DOMPdf中设置的样式。
我已经应用了https://docs.ckeditor.com/#!/guide/dev_disallowed_content发布的内容。
到目前为止,这里是我尝试的一些内容
CKEDITOR.config.disallowedContent = "table(width)"
,
CKEDITOR.config.disallowedContent = "table[style]"
但是当我从word文档或自定义的html字符串进行复制和粘贴时,仍然会粘贴样式或宽度。有小费吗?谢谢!
答案 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并尝试加粗文字或使用样式下拉菜单中的某些内嵌样式。您会看到使用strong
,code
,big
或span
等标记。为了禁止它们,您的ACF规则需要看起来像这样:例如:
var editor = CKEDITOR.replace( 'editor1', {
disallowedContent : 'span;code;strong;big'
});
请注意,上述规则会在CKEditor中完全禁用span
,strong
,code
和big
标记。如果您仍希望在编辑器中使用这些标记但仅在粘贴期间过滤内容,则应使用粘贴事件和正则表达式来更改传入的HTML: