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, время: 06:39. |