2011-10-10 54 views
5

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

例如:

<table cellpadding="0" cellspacing="0" class="tdTable" style="margin: 0 20px 0 0;"> 

我想换成上面的代码:

<table cellpadding="0" cellspacing="5"> 
+0

+1好问题 – Thariama

回答

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) 
     } 
    }); 

你可以也应用整个阵列的变化:

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); 
    }); 

在这里看到的功能完整的文档: http://www.tinymce.com/wiki.php/API3:namespace.tinymce.dom

+0

+1好答案 - 一些更多的知识focuinign tinymce我不知道 – Thariama

+0

不客气。我通常不会在tinyMCE上工作太多,但是当发布者用它编辑CMS页面的内容时,这是必须知道的...... – zuloo

1

使用invalid_elements初始化编辑 例如当设定,我使用:

invalid_elements: '@[onclick|ondblclick|onmousedown|onmouseup|onmouseover|onmousemove|onmouseout|onkeypress|onkeydown|onkeyup],script,input,select,option,button,textarea,form', 

摆脱所有提到的在输出文本中的元素/属性

+0

不会删除整个元素吗?顺便说一句,文档说,你不能使用列表中的属性:http://www.tinymce.com/wiki.php/Configuration:invalid_elements – zuloo

+0

我有valid_element设置记住 - 不是无效的元素设置。是的,整个元素被删除 – Thariama