我正在开发一个firefox扩展,我希望能够关闭一个特定的选项卡。例如,如果浏览器中有许多打开的选项卡,则只想关闭具有特定URL的选项卡。
我知道我可以使用gBrowser.removeTab(tab),但我不知道如何获取tab对象。 另一方面,我可以获得与url对应的浏览器,但removeTab()函数的param必须是“tab对象”。我是如何获得标签对象的。
有什么想法吗?
答案 0 :(得分: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);
}
答案 1 :(得分:0)
我认为您可以使用此方法:gBrowser.removeCurrentTab();
此示例关闭当前选定的标签。
有关更多代码,请参阅此链接:https://developer.mozilla.org/en/Code_snippets/Tabbed_browser