扩展中Firefox浏览器的实例

时间:2013-07-25 13:55:52

标签: javascript firefox firefox-addon add-on

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

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

有什么想法吗?

1 个答案:

答案 0 :(得分: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);