我的扩展打开了一系列附加窗口。当用户关闭Firefox主窗口时,我希望这些窗口关闭。 I know you can detect when a tab closes(也许我应该只是寻找“最终”选项卡关闭?),但我想知道什么时候“所有选项卡”已关闭。从扩展中捕获Firefox关闭事件
总之,如何检测Firefox扩展窗口关闭时的扩展名?
我的扩展打开了一系列附加窗口。当用户关闭Firefox主窗口时,我希望这些窗口关闭。 I know you can detect when a tab closes(也许我应该只是寻找“最终”选项卡关闭?),但我想知道什么时候“所有选项卡”已关闭。从扩展中捕获Firefox关闭事件
总之,如何检测Firefox扩展窗口关闭时的扩展名?
您可以收听unload活动。
如果脚本运行在所有类型的窗口上,那么检查url是否是浏览器窗口。
window.addEventListener('unload', function(event) {
if (event.target.location.href !== 'chrome://browser/content/browser.xul') {
return;
}
// do you stuff...
}, false);
我发现了一个解决方案,虽然它实际上并没有监听特定的事件。相反,我们设置一个间隔来检查标签容器是否仍然可用。
setInterval(function() {
if (typeof gBrowser.mTabContainer === 'undefined') {
// Rest of your code...
}
}, 500);
如果有更干净的方式做到这一点,我会非常乐意看到它。
不工作队友 – Tony 2013-07-25 14:36:56
你为什么这么说?这是我在我的一个项目中使用的确切解决方案,它工作正常。你如何试图使用它? – 2013-08-14 15:00:08
不工作队友 – Tony 2013-07-25 14:39:18