Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在Chrome扩展中获取当前页面URL_Javascript_Google Chrome_Google Chrome Extension - Fatal编程技术网

Javascript 在Chrome扩展中获取当前页面URL

Javascript 在Chrome扩展中获取当前页面URL,javascript,google-chrome,google-chrome-extension,Javascript,Google Chrome,Google Chrome Extension,我想从我的default\u弹出窗口中获取当前页面URL,如下所示: function(array of Tab result){...} chrome.tabs.query({active:true},函数(tab){ url=tab.url; }); 我已经在manifest.json文件中注册了这个popup.html页面。然而 我收到错误消息: 未捕获类型错误:无法调用未定义的方法“query” 我做错了什么?回调参数应该指定一个如下所示的函数: function(array of

我想从我的
default\u弹出窗口中获取当前页面URL,如下所示:

function(array of Tab result){...}
chrome.tabs.query({active:true},函数(tab){
url=tab.url;
});
我已经在
manifest.json
文件中注册了这个
popup.html
页面。然而 我收到错误消息:

未捕获类型错误:无法调用未定义的方法“query”


我做错了什么?

回调参数应该指定一个如下所示的函数:

function(array of Tab result){...}
也许你应该这样写

url = tab[0].url;
实际上是错误

Uncaught Type Error: Cannot call method 'query' of undefined

是因为我单独运行popup.html页面(与扩展名分开)意味着我在浏览器中显式打开popup.html页面以查找错误,但我忘记了popup.html可以使用chrome api,如果它是扩展名页面,并且我的扩展名没有显示url,因为我使用的是tab.url而不是tab[0].url,因此建议使用正确的ans。

您得到的错误意味着
查询
函数在
chrome.tabs
对象上不存在。从中调用此函数的扩展部分是否具有访问此函数的权限?您的扩展名是否具有tabs权限?是的,我的扩展名具有tabs权限,我正在popup.html页面中使用上面的chrome.tabs.query()方法,该页面在manifest.json文件的浏览器中注册为默认的\u popup\u action:字段。谢谢…tab[0]可以工作,但我想在给定的查询活动中询问:true其他选项卡数组包含的内容意味着选项卡[1],选项卡[2]的值是多少。。。将举行??