Таймер обратного отсчета, который я создал, не работает. Интересно, если я использую console.log для печати значения count - которое начинается с 3 - печатается что-то вроде -3498, даже если я нахожусь только около 15 секунд, поэтому должно быть что-то неправильно с набором интервал код. Отображается значение (если количество больше 0), но слишком часто изменяется интервал.Таймер обратного отсчета не работает
Вот код.
function countdown(){
window_width=window.innerWidth-70;
window_height=window.innerHeight-150;
canvas = document.getElementById("gameCanvas");
ctx=canvas.getContext("2d");
canvas.width = window_width;
canvas.height=window_height;
if(count>0){
ctx.font = '40pt Calibri';
ctx.fillStyle = "white";
ctx.fillText(count, window_width/3, window_height/2);
}
else if(count===0){
ctx.fillText("Go!", window_width/3, window_height/2);
}
else{
return;
}
setInterval(function(){count=count-1},1000);
requestAnimationFrame(countdown);
}
Любая помощь будет оценена по достоинству.
Похоже, что 'count' может быть глобальной переменной, и если да, то где ваша проблема вранье. Функция setInterval в порядке. [Вот скрипка] (http://jsfiddle.net/bigbiff02/HPdAX/) – rGil