Javascript 如何删除窗口的背景色。查找高光

Javascript 如何删除窗口的背景色。查找高光,javascript,google-chrome,Javascript,Google Chrome,如何回滚由以下代码引起的突出显示 if (window.find && window.getSelection) { var sel = window.getSelection(); sel.collapse(document.body, 0); document.body.offsetHeight; if (window.find(text, true)) { document.execCommand("hilit

如何回滚由以下代码引起的突出显示

if (window.find && window.getSelection) {
     var sel = window.getSelection(); 
     sel.collapse(document.body, 0);  
     document.body.offsetHeight;
     if (window.find(text, true)) { 
        document.execCommand("hiliteColor", false, "YellowGreen"); 
        sel.collapseToEnd(); 
     }
}

如何删除所有高光背景色,即“黄绿色”。我看到了一个与我的问题相关的例子。但公认的答案是行不通的。请有人调查一下并帮助我。

我有一个解决办法。在你的问题中没有足够的细节,所以你可能需要修改它来得到你想要的东西

这样做的目的是在突出显示代码运行时监视
domandeinserted
突变事件,并用
className
标记插入的节点,然后使用该节点查找和删除节点。警告:突变事件是不推荐的,但确实没有替代品,所以我使用我现有的

Highlighter = (function() {
    var highlighting = false;
    document.addEventListener('DOMNodeInserted', function(e) {
        if (highlighting) {
            var target = e.target;
            if (target.nodeType == 1) {
                target.className = CLASS_NAME;
            }
        }
    }, false);

    var CLASS_NAME = 'highlighted';
    return {
        highlight: function(text, color) {
            highlighting = true;            
            var sel = window.getSelection(); 
            sel.collapse(document.body, 0);

            if (window.find(text, true)) { 
                document.execCommand("hiliteColor", false, color); 
                sel.collapseToEnd(); 
            } 
            highlighting = false;
        },

        unhighlight: function() {
            var highlighted = document.querySelectorAll('.' + CLASS_NAME);
            var i = highlighted.length;
            while (i--) {
                var node = highlighted[i];
                node.parentNode.replaceChild(node.firstChild, node);
            }
        }
    }
})();

​仅在铬17中测试。这里有一把小提琴在工作:

我找到了一个替代品

$('body *').each(function () {
  ($(this).css('background-color') == "rgb(70, 130, 180)") || ($(this).css('background-color') == "rgb(255, 192, 203)") ? $(this).css("background-color", "") : 0;
});

您的目标是特定的浏览器吗?也许是Firefox?@Hemlock我只针对Chrome。@Tim下来,请帮我解决这个问题。