我正在尝试创建一个插件,它使用 chrome.tabs.getSelected
来查找当前 URL,
下面我附上了一个最小的例子,当按下任意键时,会弹出一个对话框,但它一直告诉我 chrome.tabs.getSelected
是未定义的:
list 文件:
{
"content_scripts": [
{
"matches": ["http://*/*" , "https://*/*"],
"js" : [ "main.js" ]
}
],
"manifest_version": 2,
"description": "XX",
"icons": {
"128": "icon.png",
"16": "button.png",
"32": "button.png",
"48": "icon.png"
},
"name": "XX",
"permissions": [ "tabs", "http://*/*", "https://*/*" ],
"version": "1.2"
}
和 main.js:
window.addEventListener("keyup", function(e) {
chrome.tabs.getSelected(null, function(tab) { // undefined
alert (tab.url);
});
} , false);
Chromium 版本:版本 21.0.1180.89 (154005)
编辑
window.addEventListener("keyup", function(e) {
chrome.tabs.query( {active:true}, function(tab) {
alert (tab.url);
});
} , false);
我现在真的不明白,tabs.query 也不行。
最佳答案
编辑:抱歉,刚刚意识到您不能在内容脚本中使用 chrome.tabs
。您必须向扩展程序的后台页面发送消息才能访问该页面。这是有关消息传递的一些信息:https://developer.chrome.com/extensions/messaging.html .
关于javascript - chrome.tabs.getSelected 在使用 list 版本 2 的最新 Chrome 上未定义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12227296/