使用Javascript删除HTML中的背景颜色和字体颜色

我正在改进TinyMCE编辑器,并希望在forecolor和backcolor中添加按钮默认颜色。 这是我如何获得具有随机风格的背景颜色的选定文本:

outer = tinyMCE.activeEditor.selection.getNode().outerHTML; 

例如,可能有这样的事情:

 

sadasdasdsasdasda sdasdasda sdasd asdasdasdas dasdasd

我已经尝试过jQuery中的.each ,但没有用。 这是实际代码:

 $(outer).each(function() { $(this).css({'background-color': 'transparent'}); }); 

我不是Javascript中的高手,也不是jQuery中的高手。 我该怎么做才能从outer去除所有background-color

像这样使用

 $("*").each(function () { $(this).css('background-color', 'transparent'); }); 

演示

编辑

  var a='

sadasdasdsasdasdasdasdasdasdasdasdasdasdasdasdasd

'; var outer=$(a); outer.find("*").css('background-color','transparent'); $("div").append(outer);

更新小提琴

所有需要的是插件中的编辑function( plugins/textcolor/plugin.js )。 然后结果将是:

 function onPanelClick(e) { var buttonCtrl = this.parent(), value; if ((value = e.target.getAttribute('data-mce-color'))) { buttonCtrl.hidePanel(); buttonCtrl.color(value);); if (value == 'transparent') { tinyMCE.execCommand("RemoveFormat"); } else { editor.execCommand(buttonCtrl.settings.selectcmd, false, value); } } } 

之后,编辑tinymce.js也是必需的。 所有需要的是编辑器removeformat ,例如:

 removeformat: [ {selector: 'span', styles: ['background-color'], remove: 'empty', split: true, expand: false, deep: true} ] 

FOR OTHER USERS )为面板添加新颜色,在循环前推荐的函数renderColorPicker()插入此代码:

 function renderColorPicker() { ... html += ''; html += ( '' + '
' + 'Default color
' + '' ); html += ''; for (y = 0; y < rows; y++){ ...