Javascript 如何跟踪页面更改(Chrome上下文脚本插件)?

Javascript 如何跟踪页面更改(Chrome上下文脚本插件)?,javascript,javascript-events,google-chrome-extension,Javascript,Javascript Events,Google Chrome Extension,我正在编写一个简单的Chrome插件,旨在从某些站点删除DOM元素 manifest.json { "name": "bla", "version": "1.0", "description": "bla", "content_scripts": [ { "matches": ["http://*/*"], "js": ["myscript.js"] } ], "permissions": [ "tabs", "ht

我正在编写一个简单的Chrome插件,旨在从某些站点删除DOM元素

manifest.json

{ 
  "name": "bla", 
  "version": "1.0",
  "description": "bla", 
  "content_scripts": [
    {
      "matches": ["http://*/*"],
      "js": ["myscript.js"]
    }
  ],
  "permissions": [
  "tabs", 
  "http://*/*"
    ]
}
myscript.js

window.onload = start;

function start()
{
    var ads = document.getElementById("left_ads");
    ads.parentNode.removeChild(ads);
    alert("bla");
}
当我加载目标页面时,一切正常:div id=“left\u ads”按预期删除。但是,当我点击一个链接到一个同样有类似div id=“left\u ads”的页面时,我的脚本无法工作。我知道我可能应该选择其他事件,而不是window.onload(),而是哪一个


提前谢谢

结果我找到了解决这个问题的办法。我使用了背景html文件。 因此,该插件现在看起来如下所示:

manifest.json:

{ 
  "name": "bla", 
  "version": "1.0", 
  "description": "bla", 
  "background_page": "background.html",
  "permissions": [
  "tabs", 
  "http://*/*"
    ]
}
background.html:

<html>
  <script>
    chrome.tabs.onUpdated.addListener(start);

    function start(tabID, changeInfo, tab)
    {
        chrome.tabs.executeScript(null, { file: "myscript.js"   })

    }

  </script>
</html>
每一页都可以

var ads = document.getElementById("left_ads");
ads.parentNode.removeChild(ads);