Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Не работает setInterval в цикле (https://javascript.ru/forum/misc/63161-ne-rabotaet-setinterval-v-cikle.html)

valera_k 21.05.2016 15:17

Не работает setInterval в цикле
 
Доброго времени суток, подскажите, что я не так делаю с setInterval
Пауза работает только 1 раз при запуске, потом все без задержки.

function test(){
	var timeout;
	for (var i = 1; i <= 10; i++) {
	timeout = setInterval('test2('+i+')', 1000);
	}
}

function test2(i){
	alert(i);
	i++
}

Blondinka 21.05.2016 16:38

valera_k,
вы вызов функции обернули в кавычки
'test2('+i+')'
скрипт воспринимает 'test2()' как строку.
function test(){
	var timeout;
	for (var i = 1; i <= 10; i++) {
	timeout = setInterval(test2(i), 1000);
	}
}

function test2(i){
	alert(i);
	i++;
}


test();


http://jsfiddle.net/VaAlina/wy8X9/262/
Там будет 10 alert-ов.

Blondinka 21.05.2016 16:46

valera_k,
поменяла задержку на 2 секунды, интервал не срабатывает(

рони 21.05.2016 16:49

Blondinka,
:blink:
valera_k,
а ваш код непонятен, и лучше никогда не использовать setInterval

Blondinka 21.05.2016 16:51

рони, я ищу задания ))

Как тогда делать таймер без setInterval?

valera_k 21.05.2016 16:57

Цитата:

Сообщение от Blondinka (Сообщение 417206)
valera_k,
вы вызов функции обернули в кавычки
'test2('+i+')'
скрипт воспринимает 'test2()' как строку.

Без кавычек setInterval работать не должен.

рони 21.05.2016 17:06

valera_k,
вопрос: а что вы хотите сделать?

valera_k 21.05.2016 17:12

Анимацию из jpg на js, так как flesh на андроидах не идет.

Decode 21.05.2016 17:13

valera_k, мб так?
var i = 1;

function test() {
  if (i <= 10) {
    test2();
    setTimeout(test, 1000);
  }
}

function test2() {
  alert(i++);
}

test();

рони 21.05.2016 17:15

Цитата:

Сообщение от valera_k
Анимацию из jpg на js, так как flesh

не понимаю как анимация и flesh могут быть связаны
https://learn.javascript.ru/js-animation


Часовой пояс GMT +3, время: 22:20.