javascript - 为什么浏览器操作总是被触发?为什么新闻没有被解雇?

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

我有两个问题, 第一个问题:为什么当我打开浏览器或打开新选项卡时(不仅仅是当我单击时)会触发浏览器操作? 另一个问题是:我的扩展更改了所有网站颜色,但是当网站在浏览器操作触发后获取更多信息(例如facebook)时,这不能更改吗?
我该怎么做才能使浏览器操作也始终更改所有新闻?

我的background.js是:

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

我的 content.js 开头为:

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

最佳答案

您的第二个(也是主要)问题的答案取决于……目标页面的实现方式。没有一般答案,只有一些建议

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

关于javascript - 为什么浏览器操作总是被触发?为什么新闻没有被解雇?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23651353/

相关文章:

javascript - 动态div尺寸: lightbox gallery

javascript - 仅显示每隔一条网格线

javascript - 当父 ul 隐藏时如何在 li 上使用 jquery show()

jquery数据表类型错误: j[k] is undefined

html - 在网格中输入

javascript - 为什么 Chrome 扩展 JavaScript 没有改变?

javascript - Adobe Illustrator - 自动将 TrueType 字体更改为 OpenType 版本

JavaScript "me"= "this",为什么?

javascript - jQuery select2 : duplicate tag getting recreated

javascript - HTML 部分和 div 固定大小