[英]Countdown timer doesn't render right on Chrome/Safari, but OK on 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上,代码运行正常,但屏幕上的元素不会更改。 如果发生其他事情(例如调整浏览器窗口的大小),则元素会在适当时更新。
这看起来像某种优化或基于线程的问题,但我找不到解决方案。
在Chrome,Safari和Firefox上也适用于我。
也许在这种情况下,您不需要使用html标签来显示结果, text()可能比html()更好。
尝试使用
$("#countdown").text(':'+secs);
而是html()。
OBS:似乎你的操作系统上的一些不稳定的孩子也会影响浏览器渲染。 有人可以确认或否认这个吗?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.