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('');
}
}
Đoạn mã trên không có gì mong đợi, trên Firefox. Mỗi giây một số giảm được hiển thị trong phần tử "đếm ngược".Đồng hồ đếm ngược không hiển thị ngay trên Chrome/Safari, nhưng OK trên Firefox
Trên Safari và Chrome, mã chạy đúng cách, nhưng phần tử trên màn hình không thay đổi. Nếu một cái gì đó khác xảy ra (chẳng hạn như thay đổi kích thước cửa sổ trình duyệt) các yếu tố cập nhật đúng trong khi.
Điều này giống như một số loại tối ưu hóa hoặc vấn đề dựa trên chuỗi, nhưng tôi không thể tìm thấy giải pháp.
hoạt động tốt cho tôi trên chrome http://jsfiddle.net/br4uK/ –
Hoạt động tốt cho tôi. Bạn đang sử dụng phiên bản Chrome và Safari nào? –
Thú vị. Nó có thể có một cái gì đó làm với chồng hoạt hình của JQuery - Tôi thấy cảnh báo này: "Vì bản chất của requestAnimationFrame(), bạn không bao giờ nên xếp hình ảnh động bằng cách sử dụng một vòng lặp setInterval hoặc setTimeout." Mặc dù đối tượng này không hoạt ảnh, một số đối tượng khác của chúng tôi là ... –