【发布时间】:2013-01-12 22:51:10
【问题描述】:
我已经修改了 SO, provided by SLaks 的代码,因此即使用户更改了他计算机上的时间,它也能正常工作。
<div id="timer"></div> 的时间仍然显示自页面加载以来的实时时间(即使用户更改了他计算机上的时间)。
当时间改变时,会出现警报(请参阅下面的代码)。 问题是:一旦时间改变,警报每秒出现无数次(但预计只有一次)。为什么会这样?
$(document).ready(function () {
var start = new Date;
var end = (new Date - start) / 1000;
setInterval(function () {
if (Math.abs(end - (new Date - start) / 1000 )>1) {
start = new Date - end * 1000;
alert(Math.abs(end - (new Date - start) / 1000 ));
}
end = (new Date - start) / 1000;
$('#timer').text(end + " Seconds");
}, 100);
});
【问题讨论】:
-
这一切的目的是什么?
-
所有这些的目的是显示页面加载后的实时时间。
-
从未处理过需要处理用户更改日期的情况......没有意义......但只需使用
clearInterval或其他东西。但是……对我来说仍然没有太大意义。 -
您能否回答我的问题(如果可以),为什么自从当地时间更改后警报会出现无数次?其余所有工作正常。谢谢。
标签: javascript jquery math time timer