我正在尝试使用 javascript 计算在我的 google chrome 浏览器中打开的选项卡的数量。有谁知道如何做到这一点?
我写了一些我想重复 10 次然后停止的 javascript。完成 1 次迭代后,我使用以下命令打开一个新窗口:
window.open("http://www.test.com");
我想做 10 次而不是停止。也许有比我想的更好的方法......
我正在尝试使用 javascript 计算在我的 google chrome 浏览器中打开的选项卡的数量。有谁知道如何做到这一点?
我写了一些我想重复 10 次然后停止的 javascript。完成 1 次迭代后,我使用以下命令打开一个新窗口:
window.open("http://www.test.com");
我想做 10 次而不是停止。也许有比我想的更好的方法......
网页被沙盒化是一件好事,这样其他网站就无法访问它们。如果它们是您打开的窗口,window.open
您可以将收到的参考保存到窗口中:
var win = window.open(url);
当然,如果您打开大量窗口,您可以将其推送到数组中。
var wins = [];
//looping stuff here
wins.push(window.open(url[i]);
我认为循环很好,但如果你想跟踪,
var winList = new Array();
var count = 10;
for(var i=0; i < count; i++){
winList[i] = window.open("http://www.test.com");
}
这样,您可以保留对窗口的引用。
hth
所以我想不出一种方法来做我想做的事,所以我采取了不同的方法。我说,让我们看看谷歌是否有 chrome 中的选项来限制打开的标签数量,我发现有人写了一个扩展来做到这一点。我不知道他是怎么做到的,但它确实有效。 受控的多标签浏览
查看Google Chrome Extensions Developer Guide,特别是Tabs页面和getAllInWindow
功能
chrome.tabs.getAllInWindow(integer windowId, function callback)
回调函数接收选项卡数组的位置。这意味着你可以得到它的长度。
如果您要跟踪的选项卡可能在不同的窗口中,那么您需要查看Windows页面和getAll
功能
chrome.windows.getAll(object getInfo, function callback)
使用它来遍历所有窗口并调用getAllInWindow
. 你都准备好了。
如果您只想打开十个标签:
var i;
for (i = 0; i < 10; i++) {
window.open("http://www.test.com");
}
但是不,我不相信您可以计算打开标签的数量,因为这可能会向您可能不希望他们知道的网站披露信息。(您是否希望您访问的随机网站知道您打开了多少个标签?)