在TinyMCE中忽略/替换元素属性

Ale*_*alm 5 javascript jquery tinymce

我一直在搜索没有任何结果,这里有没有人知道如何忽略和/或替换 TinyMCE中的元素属性?

例如:

<table cellpadding="0" cellspacing="0" class="tdTable" style="margin: 0 20px 0 0;">
Run Code Online (Sandbox Code Playgroud)

我想将上面的代码替换为:

<table cellpadding="0" cellspacing="5">
Run Code Online (Sandbox Code Playgroud)

zul*_*loo 3

tinyMCE 在其 dom.parser 中引入了此功能:

    tinyMCE.activeEditor.dom.Serializer.addAttributeFilter('class,style', function(nodes, name) {
        for (var i = 0; i < nodes.length; i++) {
            console.log(nodes[i].name);
            tinyMCE.dom.setAttrib(nodes[i], 'class', null);
            tinyMCE.dom.setAttrib(nodes[i], 'style', null);
            // Process the nodes here (e.g. set attribute to null or delete Attribute)
        }
    });
Run Code Online (Sandbox Code Playgroud)

您还可以将更改应用于整个数组:

    tinyMCE.activeEditor.dom.Serializer.addAttributeFilter('class', function(nodes, name) {
        tinyMCE.dom.setAttrib(nodes, 'class', null);
    });
    tinyMCE.activeEditor.dom.Serializer.addAttributeFilter('style', function(nodes, name) {
        tinyMCE.dom.setAttrib(nodes, 'style', null);
    });
Run Code Online (Sandbox Code Playgroud)

有关函数的完整文档,请参阅此处: http://www.tinymce.com/wiki.php/API3:namespace.tinymce.dom