我正在使用ckeditor,我有各种奇怪的问题。
它会自动删除空<span>
例如
<span class="new-class"></span>
自动删除。
我正在寻找最近2天的解决方案,但没有成功。我尝试将以下代码放入
config.js
CKEDITOR.config.allowedContent = true;
但没有成功。
我还在html中添加以下代码,其中我使用ckeditor但没有成功。
<script>
var editor = CKEDITOR.replace( 'editor1', {
allowedContent: true,
} );
</script>
感谢
答案 0 :(得分:14)
我正在使用Django CMS 3,CKEditor 4.3,我使用twitter bootstrap glyphicon也遇到了同样的问题。 看看:http://ckeditor.com/forums/Support/Prevent-removal-of-empty-span-tags#forum-topic-top。
为了允许空的span标记,我在ckeditor / config.js
的末尾添加了CKEDITOR.dtd.$removeEmpty.span = 0;
答案 1 :(得分:14)
我遇到了同样问题的这个帖子,并且认为我会发布我的解决方案。我不希望CKEditor删除任何空白元素。将以下内容添加到config.js文件的底部:
$.each(CKEDITOR.dtd.$removeEmpty, function (i, value) {
CKEDITOR.dtd.$removeEmpty[i] = false;
});
答案 2 :(得分:8)
您将在此问题中找到两个有效答案:CKEditor strips <i> Tag
有人说,如果你想在编辑器中看到它们,就不能保留它们,第二个说你可以阻止它们删除,但你会隐藏它们。
答案 3 :(得分:4)
对我有用的唯一选择是添加:
config.extraAllowedContent = 'span(*)';
在config.js中,位于:
CKEDITOR.editorConfig = function( config ) {
部 ''(星号)允许span标记内的所有类只允许选择的类名称添加它们而不是'',用','分隔
答案 4 :(得分:2)
这很烦人,但是在一堆页面的帮助下,我会整理我在这里发现的内容;
(我正在使用带有inlinesave编辑器的CKEditor 4.4.1,但这适用于任何插件)
核心/ filter.js 文件中的
变化:
var allowedContent = editor.config.allowedContent;
为:
var allowedContent = true;
(建议不要这样做,所以请务必检查用户正在保存的内容;-))
然后在核心/ dtd.js 文件中
底部附近的是一个$removeEmpty:
,它保存了一个元素列表,如果它们被设置为1,它就会忽略它。查找范围并将其设置为1到0(span: 0
)
如果您将“glyphicons”插件添加到 config.js 中的config.plugins
,您应该可以添加它们,在编辑器中查看它们,一旦保存,它还是会在那里! : - )
希望这有帮助
答案 5 :(得分:1)
这里有两个问题:
1)<span>
被丢弃,因为它们不是允许的内容。
2)<span>
被丢弃,因为它们是空的。
要解决此问题,您不仅需要非空<span>
,还需要配置文件中的config.extraAllowedContent = 'span(selector1,selector2,...,selectorN)'
。
作为旁注,我建议不要使用config.allowedContent
,因为这样可以提供任何内容。