为什么浏览器操作总是被触发?为什么没有被解雇的消息呢?

时间:2014-05-14 09:57:19

标签: javascript jquery google-chrome-extension browser-action

我有两个问题, 第一个问题:为什么在我打开浏览器或打开新标签时触发浏览器操作(不仅在我点击时)? 另一个问题是:我的extestion改变了所有的网站颜色,但是当浏览器操作被触发后网站获得更多信息(例如facebook)时,这不能改变?
我该怎么做才能使浏览器动作也改变所有新闻呢?

我的background.js是:

chrome.browserAction.onClicked.addListener(function(tab) {  
  chrome.tabs.executeScript({
    file:"content.js"
  });
});

我的content.js以:

开头
$(document).ready(function(){
        hauptProg();
        });

1 个答案:

答案 0 :(得分:1)

关于您的第二个(和主要)问题的答案取决于...目标页面的实施方式。没有一般性答案,只有一些建议

  • 您可以使用MutationObserver找出元素内容何时发生变化。然后,您可以再次执行代码
  • 也许你可以看到,比方说,页面加载后两秒钟已经加载了其他内容。然后你可以用window.setTimeout(yourMethod, 2000)开始超时,以便在2秒后执行你的方法