我正在尝试编写Google Chrome扩展程序。
documentation甚至sample code表示后台页面可以使用chrome.tabs.executeScript
方法在活动标签页上运行JavaScript,但chrome.tabs
始终为undefined
当我打破调试器时。
此行为在我的代码和Google示例代码中都很明显。
真实问题:如何在Chrome扩展程序的后台页面上的活动标签页上运行JavaScript?
background.js:
chrome.browserAction.onClicked.addListener(function(tab) {
debugger;
// chrome.tabs is undefined here
chrome.tabs.executeScript({
code: "console.log('hi')"
});
});
manifest.js:
{
"manifest_version": 2,
"name": "Hello World",
"description": "Says 'hello' to the world.",
"version": "0.1",
"permissions": ["tabs", "activeTab"],
"browser_action": {
"default_title": "hi"
},
"background": {
"scripts": ["background.js"]
}
}
我尝试过的事情:
persistent
的{{1}}标记设置为background
,false
,true
和"false"
"true"
权限当我尝试访问"tabs"
时,运行时会抛出此错误:
chrome.tabs