我正在 Firefox 中构建一个扩展,我想知道是否有办法知道打开浏览器时使用 javascript 打开了多少个实例?
例如,我打开一个 Firefox 浏览器实例,我想获取当前实例的数量。
有任何想法吗?
我正在 Firefox 中构建一个扩展,我想知道是否有办法知道打开浏览器时使用 javascript 打开了多少个实例?
例如,我打开一个 Firefox 浏览器实例,我想获取当前实例的数量。
有任何想法吗?
找到了可以帮助你的东西:
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);