javascript - ckeditor allowedExtraContent 带有结束 html 标签

标签 javascript ckeditor wysiwyg

我在配置 ckEditor 时遇到问题。

配置如下:

<script>
  $( document ).ready( function() {
    var ckeditor = CKEDITOR.replace( 'myTest', {
            allowedContent: true
            extraAllowedContent : 'foo[*]{*}'
</script>

HTML 是:

<textarea id="myTest">
  <foo>balabalabal</foo>
  <foo attr="value"/>
</textarea>

当我在浏览器中查看结果时,如果缺少第二个 foo 标记, 我怎样才能同时保留它们?

最佳答案

您需要记住,CKEditor 是一个 HTML 编辑器,并且没有 <foo>标签。此外,您还创建了一个已关闭的 <foo></foo>标签和一个自动关闭<foo /> 。您无法将此类内容加载到 CKEditor 中。

请注意,可以稍微调整 CKEditor 以接受非 HTML 标签。这可以通过扩展 CKEDITOR.dtd 来实现对象。

CKEDITOR.dtd.foo = { '#': 1 };
CKEDITOR.dtd.body.foo = 1;
CKEDITOR.dtd.$block.foo = 1;

这将允许 foo标签为 body 的子级。 foo标签将只允许包含文本内容 ( '#' ),并将被视为 block 标签。

关于javascript - ckeditor allowedExtraContent 带有结束 html 标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29297936/

相关文章:

javascript - 为什么鼠标滚轮在 chrome 中有效,但在 firefox 中无效

具有不可编辑岛屿的 CKEditor

javascript - 当文本由外部源更新时,防止 ckeditor 触发设置回调

web - 适合 aptana studio 初学者的所见即所得编辑器

javascript - Chrome 开发者工具中的 g { } 是什么意思?

javascript - 在 javascript 中使用 with 是不好的做法吗?

javascript - 我的复选框不显示要素图层

jquery - 按需加载CKeditor和Jquery

javascript - Cckeditor 不允许使用 img 元素

javascript - Wysihtml5 不工作,Uncaught TypeError : $(. ..).wysihtml5 不是函数