Вот что я пытаюсь сделать: добавьте 1 новое имя класса каждые 3 секунды, а затем остановитесь после добавления 5. Когда я запускаю этот код, он продолжает добавлять классы на неопределенный срок! Он также добавляет 3 класса все в 1 раз.setInterval in for loop
var linesOfText = ['Testing Second Part', 'Testing Third Part', 'Testing Fourth Part', 'Testing Fifth Part'];
var j = 1;
var total = 5;
for (var i = linesOfText.length - 1; i >= 0; i--) {
var myVar = setInterval(function(){
$('.vertical-effectOFF').addClass('vertical-effect-' + j);
j++;
if (j === total) {
console.log('stop!');
clearInterval(myVar);
}
}, 3000);
}
Есть ли хороший способ добавить setTimeout после строки .addClass()? Мне нужно подождать несколько секунд, сделать что-то, а затем перейти к строке j ++. – Tom
@Tom проверить эту ссылку http://stackoverflow.com/questions/951021/what-do-i-do-if-i-want-a-javascript-version-of-sleep – brso05
У меня есть расширение этого вопроса здесь: http://stackoverflow.com/questions/30873346/settimeout-within-setinterval-not-firing-as-expected – Tom