6
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で予想されることです。減少する数が毎秒 "カウントダウン"要素に表示されます。カウントダウンタイマーはChrome/Safariで正しくレンダリングされませんが、Firefoxでは正常に表示されます
SafariとChromeでは、コードは正しく実行されますが、画面上の要素は変更されません。ブラウザウィンドウのサイズを変更するなど何かが発生した場合、要素は正しく更新されます。
これは、ある種の最適化またはスレッドベースの問題のようですが、解決策が見つかりません。
は私のためにうまくいきます。http://jsfiddle.net/br4uK/ –
私にとってもうまく動作します。 ChromeとSafariのどのバージョンを使用していますか? –
興味深い。 JQueryのアニメーションスタックと何か関係があるかもしれません。私はこの警告を見つけました。「requestAnimationFrame()の性質のため、setIntervalまたはsetTimeoutループを使用してアニメーションをキューに入れないでください。このオブジェクトはアニメーション化されていませんが、他のオブジェクトのいくつかは... –