0
我正在尝试构建一个功能,需要为用户加载大约200个新窗口,但是在完成加载后关闭它们,或者在我们说10秒后关闭它们。Javascript正在管理多个窗口。打开
但是我知道在同一时间打开很多页面实际上是不可能的,因为它会使客户端的浏览器崩溃。所以我想要做的是管理新的window.opens,以便它只加载五个五。一旦一个页面关闭,它会从队列中加载另一个页面。
这是我到目前为止有:
var loadingQueue = localStorage.loadingQueue ? JSON.parse(localStorage.loadingQueue) : [];
var timeToLoad = 10000;
var windowArray = [];
var self = this;
var timedLoading = function() {
if (loadingQueue.length > 0 && windowArray.length < 6) {
loadingQueue = localStorage.loadingQueue ? JSON.parse(localStorage.loadingQueue) : [];
var url = loadingQueue.pop();
localStorage.setItem('loadingQueue', JSON.stringify(loadingQueue));
self.updateLength();
var newWindow = window.open(url, '_blank');
windowArray.push(newWindow);
setTimeout(function() {
var windowIndex = windowArray.indexOf(newWindow);
var curWindow = windowArray.splice(windowIndex, 1);
curWindow.close();
}, timeToLoad);
setTimeout(timedLoading, 1500);
}
};
timedLoading();
但是页面没有被关闭。我只测试了一页,在设定的时间之后关闭就好了。为什么我不能在很多窗口上做同样的事情?
任何提示是非常感谢。非常感谢