2012-07-26 18 views
12

我需要知道chrome tabId在所有打開的窗口中是否唯一。隱身和正常。是否保證所有窗口中打開的選項卡都不具有相同的tabId?是否在整個窗口中是唯一的chrome tabId

我搜索了文檔,但找不到任何可靠的答案。

+0

我打算在這裏猜一猜,並且考慮到你可以將一個標籤從一個窗口拖到另一個窗口,那是的,它是唯一的。 – 2012-07-26 01:23:26

回答

15

是的,標籤ID在瀏覽器會話內是唯一的。它也是chrome.tabs文件中提到:

Tab
(object)
    id (integer)
       The ID of the tab. Tab IDs are unique within a browser session.

如果你還是不相信它,創造它具有tabs權限的擴展,並在隱身窗口中運行的權利。然後在後臺運行頁面下面的代碼:

// Create incognito window 
chrome.windows.create({incognito: true, url:'about:blank'}, showTabId); 
// Create normal window 
chrome.windows.create({incognito: false, url:'about:blank'}, showTabId); 

function showTabId(_window) { 
    console.log(_window.tabs[0].id);  // Or alert, whatever. 
    chrome.tabs.remove(_window.tabs[0].id); // Closes tab & window, user-friendly 
} 

記錄的數量正在增加(如果考慮兩個數字作爲一個過小樣本,運行在一個循環中chrome.windows.create方法,直到你相信它)。

+0

非常感謝...非常感謝 – Amila 2012-07-26 15:26:24

+0

謝謝,你能解釋一下什麼是會議嗎?因此,在導航器會話之間是否應該與使用tabId的同步存儲產生衝突? – 2017-04-12 11:47:50

+1

@Jean會話在您第一次啓動瀏覽器時開始,並在主瀏覽器進程退出時結束。 – 2017-04-12 16:55:28

相關問題