0

我正在 Firefox 中构建一个扩展,我想知道是否有办法知道打开浏览器时使用 javascript 打开了多少个实例?

例如,我打开一个 Firefox 浏览器实例,我想获取当前实例的数量。

有任何想法吗?

4

1 回答 1

0

找到了可以帮助你的东西:

nsIWindowMediator是一个跟踪打开窗口的组件。它具有getEnumerator允许您获取所有打开的窗口的方法。

如果你遍历它并计算它们,你会得到打开窗口的数量,如下所示:

var windowMediator = Components.classes["@mozilla.org/appshell/window-mediator;1"]
    .getService(Components.interfaces.nsIWindowMediator);

var enumerator = windowMediator.getEnumerator(null);
var count = 0;
while (enumerator.hasMoreElements()) {
    var myWindow = enumerator.getNext();
    count++;
}
alert(count);
于 2013-07-29T18:45:38.337 回答