2012-11-22 76 views
4

我不知道我在做什麼錯在這裏!這應該是我相信的工作。我正在寫一個Chrome擴展,這應該得到當前標籤的URL並將#current-tab的html設置爲url(用於測試目的)。代碼成功進入回調,但它說tab.url是不確定的,當我把它放在一個警告框,並沒有把它的值在#current-tab。下面的代碼我有:Tabs.url不明確

$('#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); 
     }; 
    }); 
}); 
+0

不應該是'tab [i] .url'嗎? – jrajav

+0

@Kiyura Ha,看起來像我們在想同樣的事情:) – RocketDonkey

+0

我最初這樣做('tab [i] .url'),因爲我知道它返回了一個數組,但這似乎並沒有工作,所以我發佈了我正在嘗試的腳本,這對我來說沒有多大意義,但我正在嘗試......請參閱上面我的編輯代碼。 – Notionwork

回答

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); 
    }; 
    }); 
}); 
+0

我最初是這麼做的('tab [i] .url'),因爲我知道它返回了一個數組,但這似乎也沒有工作,所以我發佈了我正在嘗試的腳本,而不是對我來說很有意義,但是我正在嘗試......用我的原始代碼查看我的上面的編輯。 – Notionwork

+0

@Notionwork我們會先找到簡單的方法(希望:)) - 你在'manifest.json'中的'permissions'裏有'tabs'嗎? – RocketDonkey

+0

是!這裏是我的清單:'{ \t 「名」: 「Notionwork站點管理器」, \t 「版本」: 「1.0」, \t 「manifest_version」:2, \t 「說明」:「經理組織是的網站興趣,並增加了corrisponding書籤到Chrome書籤管理器」, \t 「browser_action」:{ \t \t 「default_icon」: 「的icon.png」, \t \t 「default_popup」: 「popup.html」 \t}, \t 「權限」:[ \t \t 「標籤」 \t], \t 「圖標」:{ \t \t 「128」: 「的icon.png」 \t} }' – Notionwork

1

我想出了什麼是錯的!顯然,您需要重新加載擴展以刷新對清單文件的更改!我稍後添加了權限,但沒有在擴展管理器中重新加載擴展,所以更改沒有生效!我們正在滾動!

+0

哈哈,所以這是清單,這很好!它是'tabs'部分嗎? – RocketDonkey

+0

同樣的問題在這裏。這個節目是在谷歌擴展文檔的頭版。 – RoarG