Я пытаюсь создать функциональность, которая должна загружать пользователю около 200 новых окон, но закрывайте их, когда они будут загружены, или, скажем, через 10 секунд.Javascript, управляющий несколькими window.open
Однако я знаю, что открытие того, что многие страницы одновременно невозможно, поскольку это приведет к сбою браузера клиента. Так что я пытаюсь сделать, это управлять новым 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();
однако страницы не закрываются. Я тестировал только одну страницу, и она закрылась просто отлично, после установленного количества времени. Почему я не могу сделать то же самое со многими окнами?
Любой намек очень ценится. Большое спасибо