猿问

CKEditor自动从div中删除类

CKEditor自动从div中删除类

我在我的网站上使用CKEditor作为后端编辑器。它驱使我绕过弯道,因为它似乎想要在我按下源按钮时将代码更改为它看起来如何合适。例如,如果我点击源并创建一个<div>...

<div class="myclass">some content</div>

然后没有明显的理由剥离类<div>,所以当我再次点击源它已被改为...

<div>some content</div>

我认为这种恼人的行为可以在关闭config.js,但我一直在挖掘,无法在文档中找到任何东西来关闭它。


慕无忌1623718
浏览 806回答 3
3回答

守候你守候我

禁用内容过滤最简单的解决方案是进入config.js和设置:config.allowedContent&nbsp;=&nbsp;true;(记得清除浏览器的缓存)。然后CKEditor完全停止过滤输入的内容。但是,这将完全禁用内容过滤,这是最重要的CKEditor功能之一。配置内容过滤您还可以更精确地配置CKEditor的内容过滤器,以仅允许您需要的这些元素,类,样式和属性。这个解决方案要好得多,因为CKEditor仍会删除浏览器在复制和粘贴内容时产生的许多糟糕的HTML,但它不会删除你想要的内容。例如,您可以扩展默认CKEditor的配置以接受所有div类:config.extraAllowedContent&nbsp;=&nbsp;'div(*)';或者一些Bootstrap的东西:config.extraAllowedContent&nbsp;=&nbsp;'div(col-md-*,container-fluid,row)';或者,您可以允许包含可选dir属性dt和dd元素的描述列表:config.extraAllowedContent&nbsp;=&nbsp;'dl;&nbsp;dt&nbsp;dd[dir]';这些只是非常基本的例子。您可以编写所有类型的规则 - 需要属性,类或样式,仅匹配特殊元素,匹配所有元素。您也可以禁用内容并完全重新定义CKEditor的规则。了解更多:CKEditor中的内容过滤&nbsp;- 为什么需要内容过滤器。高级内容过滤器&nbsp;- 深入描述过滤机制。允许的内容规则&nbsp;- 如何编写允许的内容规则。
随时随地看视频慕课网APP
我要回答