@SeniorDmitry

Как сделать открытие ссылок по очереди?

Дорогие друзья подскажите как ?
У меня есть страничка html в ней 150 div-ов (в них ссылка) мне нужно , чтобы скрипт открывал каждую ссылку с интервалом в 3 минуты в новой вкладе . Изначально все работает хорошо ,но открывает все ссылки разом когда прописываю setTimeout не работает =( Подскажите пожалуйста ошибку. Как установить таймер на открытие ссылки ?
var y = [document.getElementsByTagName("div")];
		for(var i = 0; i < y[0].length; i++){
			setTimeout('window.open(y[0][i].innerHTML)' , 30000000);
		}
  • Вопрос задан
  • 1264 просмотра
Решения вопроса 1
IonDen
@IonDen
JavaScript developer. IonDen.com
Примерно так:

var counter = 0,
    divs = document.getElementsByTagName("div"),
    linksNumber = divs.length,
    delay = 10000;

function openLink () {
    var url = divs[counter].innerHTML;
    window.open(url);

    if (counter < length) {
        counter++;
        setTimeout(openLink, delay);
    }
}

setTimeout(openLink, delay);
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@SeniorDmitry Автор вопроса
Спасибо большое все получилось, только ошибочка одна была)
var counter = 0,
divs = document.getElementsByTagName("div"),
linksNumber = divs.length,
delay = 10000;

function openLink () {
var url = divs[counter].innerHTML;
window.open(url);

if (counter < linksNumber) {
counter++;
setTimeout(openLink, delay);
}
}

setTimeout(openLink, delay);
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы