該代碼旨在將用戶正在查看的頁面的當前標籤對象輸出到控制檯,但它僅輸出未定義的內容。它從瀏覽器操作頁面中運行。如何使用chrome.tabs.getCurrent獲取Chrome擴展中的頁面對象?
chrome.tabs.getCurrent(function(tab){
console.log(tab);
});
我已經看過了documentation而據我可以告訴代碼似乎符合它說什麼。
該代碼旨在將用戶正在查看的頁面的當前標籤對象輸出到控制檯,但它僅輸出未定義的內容。它從瀏覽器操作頁面中運行。如何使用chrome.tabs.getCurrent獲取Chrome擴展中的頁面對象?
chrome.tabs.getCurrent(function(tab){
console.log(tab);
});
我已經看過了documentation而據我可以告訴代碼似乎符合它說什麼。
,因爲谷歌瀏覽器16 getSelected()
已棄用的方法(但官方文檔中的許多文章尚未更新)。 Official message is here。要獲取在指定窗口中選擇的選項卡,請使用chrome.tabs.query()
和參數{'active': true}
。所以現在它應該看起來像這樣:
chrome.tabs.query({ currentWindow: true, active: true }, function (tabs) {
console.log(tabs[0]);
});
這總是在回調中返回0長度數組( – SuperUberDuper
)如果在一個桌面中,我打開了2個chrome窗口,每個窗口都顯示一個選項卡,在這種情況下,這有可能具有> 1個活動選項卡? – lsheng
瀏覽器操作彈出頁面不是任何選項卡的一部分,所以'tabs.getCurrent()'不起作用。相反,serg用'tabs.getSelected()'的答案應該可以做到。 –