我在我的网站上使用CKEditor作为后端编辑器。然而,它让我抓狂,因为它似乎想要在我按下源按钮时将代码更改为合适的方式。例如,如果我命中source并创建一个<div>
...
<div class="myclass">some content</div>
然后,它毫无理由地将这个类从<div>
中剥离出来,所以当我再次命中源代码时,它已被更改为...
<div>some content</div>
我假设这种恼人的行为可以在config.js
中关闭,但我一直在挖掘,在文档中找不到任何东西来关闭它。
发布于 2014-08-07 20:54:14
我找到了一个解决方案。
这关闭了过滤,它在工作,但不是一个好主意...
config.allowedContent = true;
处理内容字符串对于id等来说很好,但对于class和style属性就不行了,因为您有()和{}用于class和style过滤。
所以我打赌允许编辑器中的任何类是:
config.extraAllowedContent = '*(*)';
这允许任何类和任何内联样式。
config.extraAllowedContent = '*(*);*{*}';
要对任何标记仅允许class="asdf1“和class="asdf2”:
config.extraAllowedContent = '*(asdf1,asdf2)';
(所以你必须指定类名)
要仅允许p标记使用class="asdf“:
config.extraAllowedContent = 'p(asdf)';
要允许任何标记的id属性,请执行以下操作:
config.extraAllowedContent = '*[id]';
等等等等
要允许样式标记(...):
config.extraAllowedContent = 'style';
说得更复杂一点:
config.extraAllowedContent = 'span;ul;li;table;td;style;*[id];*(*);*{*}';
希望这是一个更好的解决方案。
发布于 2013-06-06 10:22:57
从CKEditor v4.1开始,您可以在config.js of CKEditor中执行此操作:
CKEDITOR.editorConfig = function( config ) {
config.extraAllowedContent = '*[id](*)'; // remove '[id]', if you don't want IDs for HTML tags
}
发布于 2013-03-27 21:30:07
如果你使用的是ckeditor 4.x,你可以试试
config.allowedContent = true;
如果你使用的是ckeeditor3.x,你可能使用的是this issue。
尝试将以下代码行放入config.js
config.ignoreEmptyParagraph = false;
https://stackoverflow.com/questions/15659390
复制相似问题