用户插入空标签时CKEditor出现问题:
(在 HTML 源代码模式下)
<a href="fds" class="doIt"></a>
当他按下源然后再次返回时,标签“A”消失了。我做了一点研究,我发现这是因为 ckeditor.js 中有一个非常复杂的函数来检查元素内部是否存在值。如果没有,CKEditor 会删除标签。
用户插入空标签时CKEditor出现问题:
(在 HTML 源代码模式下)
<a href="fds" class="doIt"></a>
当他按下源然后再次返回时,标签“A”消失了。我做了一点研究,我发现这是因为 ckeditor.js 中有一个非常复杂的函数来检查元素内部是否存在值。如果没有,CKEditor 会删除标签。
我找到了使用标签遇到的这个特定问题的解决方案
对其进行修复或调整(您可以命名)是将以下内容设置到 ckeditors config.js 中:
// ALLOW <i></i>
config.protectedSource.push( /<i[\s\S]*?\>/g ); //allows beginning <i> tag
config.protectedSource.push( /<\/i[\s\S]*?\>/g ); //allows ending </i> tag
如果它不影响任何东西,请尝试添加
您的 A 标签。ckeditor 验证、清理和清理 html。显然它不喜欢空的锚标签。
我知道这很旧,但在 CKEDITOR 4.x 中你可以这样做:
CKEDITOR.dtd.$removeEmpty.ElementHere = 0;
将 ElementHere 替换为您想要的任何标签。就像允许图标的空 i 标签一样:
CKEDITOR.dtd.$removeEmpty.i = 0;
尝试将此行添加到您的 config.js 文件中:
CKEDITOR.config.allowedContent = true;
希望这可以帮助