setInterval, не меняет значение глобальная переменная.
Добрый день! Есть задача сделать таймер при помощи setInterval, не используя new Date() вообще. Как бы и просто, и в тоже время глобальная переменная не меняет своё значение. Подскажите почему?
var a = 0; var intId; function timm(){ a+=1; console.log(a);//test } if(a <= 0 && a >10){ clearInterval(intId); } else {intId = setInterval(timm,1000);} |
Цитата:
Цитата:
|
var a = 0; если убрать условную конструкцию вообще, с вывести в консоль вне функции переменную "а" то она не меняется.
|
Спасибо, вопрос более не актуален. Нашел ответ.
|
Javany11,
что хотите сделать? |
Цитата:
|
таймер нужен, который досчитывал до 60-ти и начинал сначала. Далее эту переменную использовать для периодического изменения стилей через условные конструкции. new Date() использовать нельзя.
|
Javany11,
<!DOCTYPE html> <html> <head> <title>Untitled</title> <meta charset="utf-8"> <style type="text/css"> .red{ font-size: 28px; color: #FF0000; } </style> </head> <body> <div id="num">0</div> <script> var a = 0, n = 60; function fn() { a = ++a % n; num.innerHTML = a ; if(!a) num.classList.toggle("red") window.setTimeout(fn, 100) // 1000 } fn() </script> </body> </html> |
Спасибо, у меня несколько иначе получилось, но тоже работает. Спасибо Вам за то что отзываетесь на крики помощи новичков. Плюсик поставил)
|
Часовой пояс GMT +3, время: 18:13. |