ckeditor - 使用没有标签 p 的 CKEditor block 引用

标签 ckeditor

在 CKEditor 中,当我在工具栏中使用块引用时,它会像

<blockquote>
  <p></p>
</blockquote>

如何去除标签 <p></p>在块报价?

或者如何更换<p></p><pre></pre> ?

最佳答案

此代码向编辑器添加过滤器以将“p”标记更改为“pre”标记,只要“p”标记位于“bloquote”块内。

 CKEDITOR.on( 'instanceReady', function( ev )
    {
        var editor = ev.editor;
        var dataProcessor = editor.dataProcessor,
        htmlFilter = dataProcessor && dataProcessor.htmlFilter;

        htmlFilter.addRules(
        {
            elements:
            {
                $: function (element) {
                    var parent = element.parent;

                    if (element.name == 'p') {
                        if (parent && parent.name.toLowerCase()=='blockquote') {
                            element.name="pre";
                        } 
                    } 

                    return element;
                }
            }
        });

    });

看一个例子:

https://jsfiddle.net/z6y8q6rm/4/

关于ckeditor - 使用没有标签 p 的 CKEditor block 引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25890889/

相关文章:

ruby-on-rails - CKEditor 不改变图像的大小

javascript - CKEditor 图像宽度和高度作为 HTML 属性而不是内联样式

javascript - CKEditor只在onload后加载?

javascript - 禁用 CKEditor 4.0 LITE 插件中的特定按钮以跟踪更改

java - Java 中 CKEditor 的集成

ckeditor - 如何从 CKEditor 5 实例获取数据

javascript - 将样式应用于表格时如何同时将样式应用于表格和所有单元格

jquery - 第二次 ajax 加载后 CKEditor 消失

ckeditor - CKEditor ACF 允许的默认内容规则是什么?

javascript - CKEditor + IE7+8 'null or not an object' 错误