Таймер обратного отсчета не отображается правильно в Chrome / Safari, но работает в Firefox

function countDownRound() {
    if(myRoundTimeRemaining >= 0){
        var secs = myRoundTimeRemaining;
        if(secs < 10)
        {
            secs = "0" + secs;
        }
        $("#countdown").html(':'+secs);
        CountdownTimer = setTimeout(countDownRound, 1000);
        myRoundTimeRemaining--;
    }
    else{
        $("#countdown").html('');
    }
}

Приведенный выше код делает то, что ожидалось, в Firefox. Каждую секунду в элементе" обратного отсчета "отображается убывающее число.

В Safari и Chrome код работает правильно, но экранный элемент не меняется. Если что-то еще происходит (например, изменение размера окна браузера), элементы обновляются правильно, пока.

Это похоже на какую-то оптимизацию или проблему на основе потоков, но я не могу найти решение .

6
задан F. Randall Farmer 26 August 2011 в 19:47
поделиться