我试图让用户通过按钮激活/停用Chrome内容脚本。 在我看来,最好的方法是通过chrome.browserAction。
但是如果我添加
chrome.browserAction.onClicked.addListener(function(tab) {
chrome.tabs.executeScript(null, {file: "script.js"});
});
到background.html,无论是否按下按钮,脚本都会运行。 脚本的其余部分运行正常。唯一的问题是浏览器按钮。 任何可能出现问题的想法? 谢谢!
答案 0 :(得分:1)
contentScript
与browserAction
或pageAction
不同。如果它作为内容脚本加载到您的manifest.json
中,则会执行它,就好像它包含在页面上的<script>
标记中一样。
您可以使用内容脚本中的Chrome message passing API来检查background.html中的变量,也可以将脚本加载为pageAction,具体取决于哪种功能更适合您。
答案 1 :(得分:0)
您是否意识到您的代码在后台页面中执行内容脚本?
chrome.browserAction.onClicked.addListener(function (tab) {
chrome.tabs.executeScript(null, {
file: "script.js"
});
});
只要在任何标签页中单击浏览器图标,该代码就会运行,并在后台页面中执行。
你想要达到什么目标?