2011-10-03 111 views
3

我正在開發一個Firefox擴展,我希望能夠關閉一個特定的選項卡。例如,如果瀏覽器中有許多打開的選項卡,只想關閉具有特定URL的選項卡。關閉只有一個特定的選項卡與Firefox擴展

我知道我可以使用gBrowser.removeTab(標籤),但我不知道如何獲得標籤對象。 另一方面,我可以得到與url相對應的瀏覽器,但removeTab()函數的參數必須是「選項卡對象」。我如何得到標籤對象。

任何想法?

回答

5

tabbrowser.getBrowserForTab() method實際上是將瀏覽器與標籤關聯的最簡單方式。所以,你會做這樣的事情:

var tabs = gBrowser.tabs; 
for (var i = tabs.length - 1; i >= 0; i--) 
{ 
    var tab = tabs[i]; 
    var browser = gBrowser.getBrowserForTab(tab); 
    if (browser.currentURI && browser.currentURI.spec == "...") 
    gBrowser.removeTab(tab); 
} 
相關問題