我正在尝试从弹出窗口(特别是popup.js)重新加载用户可能在其中一个标签页中打开的页面。我正在查看此答案,但仅适用于当前标签https://stackoverflow.com/a/25246060/8786209。
此外,当它运行时,我收到此错误:
popup.html:1 Unchecked runtime.lastError while running tabs.executeScript: Cannot access contents of url "thewebpageiamtryingtoaccess.com".
Extension manifest must request permission to access this host at Object.callback (chrome-extension://mjckbfpnokoplldjpijdfhffbbbfflah/popup.js:3:17)
我添加了
"permissions": [
"tabs"
],
在我的清单里面,仍然没有运气。如何为用户打开的特定选项卡执行此操作。我希望这在第一次加载扩展时重新加载网站,这样用户就不必手动重新加载网页以使内容脚本生效。谢谢!
答案 0 :(得分:5)
要修复执行错误,您需要将清单文件中的权限更改为:
"permissions": [
"tabs",
"http://*/",
"https://*/"
]
您可以通过网址查询标签的ID,如下所示:
chrome.tabs.query({url: "http://thewebpageiamtryingtoaccess.com/*"}, function(tab) {
// reload tab with one of the methods from linked answer
chrome.tabs.reload(tab[0].id)
})