我的manifest.json匹配每个URL。因此,只要在Chrome中打开一个URL,就会激活内容脚本。
当前过程:
(1)我的后台脚本将当前的空URL更新为某些内容。
(2)我的内容脚本已激活,因为它与manifest.json中的匹配。我的内容脚本需要访问同一网站上的多个URL。它单击一个链接并向后导航(=一个选项卡中的所有内容)->内容脚本再次调用自身,因为打开了另一个URL。
问题:
我不希望内容脚本多次调用自身。例如,仅当它从后台脚本中收到一条消息,表明已打开新的URL时,才应激活它。
想法:
chrome.windows.onCreated.addListener(function())在后台脚本中围绕我的所有代码。我要寻找的内容脚本是否有类似内容?
也许类似于:
但是我不知道如何正确使用它们。
答案 0 :(得分:1)
在您的后台脚本中,执行以下操作:
setup.cfg
然后在内容脚本中,您可以通过以下方式拦截此消息:
chrome.windows.onCreated.addListener(function(tab) {
let msg = {txt: "execute"};
chrome.tabs.sendMessage(tab.id, msg);
};
文档在这里。 https://developer.chrome.com/extensions/runtime#method-sendMessage https://developer.chrome.com/extensions/runtime#event-onMessage