4

我不知道我在这里做错了什么!我相信这应该有效。我正在编写一个 chrome 扩展,这应该获取当前选项卡的 url 并将 html 设置#current-tab为 url(用于测试目的)。代码成功到达回调,但是当我将 tab.url 放入警报框中时它说未定义,并且它没有将它的值放入#current-tab. 这是我的代码:

$('#get-tab').click(function(){
    chrome.tabs.query({"active" : true}, function(tab){
        for (var i = 0; i < tab.length; i++) {
            alert(tab[i].url);
            $('#current-tab').append(tab[i].url);
        };
    });
});
4

2 回答 2

2

chrome.tabs.query实际上返回一个对象数组Tab,因此您必须引用数组内部的选项卡(即使它只有一个Tab):

$('#get-tab').click(function(){
chrome.tabs.query({"active" : true}, function(tab){
    for (var i = 0; i < tab.length; i++) {
        alert(tab[i].url);
        $('#current-tab').append(tab[i].url);
    };
  });
});
于 2012-11-22T22:56:37.007 回答
1

我发现出了什么问题!显然您需要重新加载扩展来刷新对清单文件的更改!我后来添加了权限,但没有在扩展管理器中重新加载扩展,所以更改没有生效!我们现在正在滚动!

于 2012-11-23T06:19:07.117 回答