阻止firefox应用程序的多个实例

时间:2013-07-31 22:02:25

标签: javascript html5 firefox tabs

我已经在JavaScript / HTML5中构建了一个Firefox 22应用程序,我想阻止用户打开它的多个实例(无论是在单独的标签页还是单独的浏览器中)。

目前,当您尝试打开它的另一个实例时,它会重定向到about:blank,将应用程序的原始实例置于焦点(切换选项卡或窗口),并显示警报(在原始实例)。这是检查我在localStorage中设置的displayState变量。

我遇到的问题是,当警报启动时,用户可以按照自己的意愿打开任意数量的应用程序。

有没有比使用(displayState签入)localStorage更好的方法呢?或者有没有办法防止警报超时应用程序?

1 个答案:

答案 0 :(得分:1)

警报阻止Firefox中的脚本执行(例如Opera不是这样),你几乎无法改变它。因此,你应该使用不同的东西。

尽管如此,您可以在应用程序启动时设置localStorage密钥,并在关闭时取消设置(window.onunload)。但是,如果浏览器崩溃,用户可能会陷入困境。 您可以尝试SessionStorage,这会在浏览器关闭时自动清除。