CKEDITOR将h1..3标签更改为h4..6标签

时间:2018-04-19 16:04:51

标签: javascript html ckeditor

我只想在编辑器中允许h4,h5和h6标头标签。当调用getData()时,我希望将h1,h2和h3标签分别过滤并分别转换为h4,h5和h6。我试图应用过滤器,但似乎不允许这样做。

CKEDITOR.instances['editor1'].on('getData', function (e) {
    var filter = new CKEDITOR.htmlParser.filter({
        elements: {
            h1: function (e1) {
                e1.name = 'h4';
            },
            h2: function (e1) {
                e1.name = 'h5';
            },
            h3: function (e1) {
                e1.name = 'h6';
            }
        }
    });
    filter.applyTo(e.data.dataValue);
}, null, 12);

以上是我编写的代码。我缺少任何有用的方法来使这项工作?

1 个答案:

答案 0 :(得分:0)

只需修改format headers即可简化此用例。 例如。你可以写下你的代码:

CKEDITOR.config.format_h1 = { element: 'h4' };
CKEDITOR.config.format_h2 = { element: 'h5' };
CKEDITOR.config.format_h3 = { element: 'h6' };

请注意,如果您的用户有权访问source模式,则无法使用。在这种情况下,我认为您可以做的最好的事情是添加自定义过滤器转换。您可以阅读CKEditor docs了解有关此功能的更多信息。