Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/411.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 页面加载后的JQuery时钟/计时器(即使用户更改其计算机上的时间)_Javascript_Jquery_Math_Time_Timer - Fatal编程技术网

Javascript 页面加载后的JQuery时钟/计时器(即使用户更改其计算机上的时间)

Javascript 页面加载后的JQuery时钟/计时器(即使用户更改其计算机上的时间),javascript,jquery,math,time,timer,Javascript,Jquery,Math,Time,Timer,我修改了来自的代码,因此即使用户更改了计算机上的时间,也可以使其正常工作 的时间仍然显示页面加载后的实时时间(即使用户更改了计算机上的时间) 更改时间后,将显示警报(请参见下面的代码)。 问题是:一旦时间发生变化,警报每秒出现的次数将是无限的(但预期只有一次)。为什么会这样 $(document).ready(function () { var start = new Date; var end = (new Date - start) / 1000; setInterv

我修改了来自的代码,因此即使用户更改了计算机上的时间,也可以使其正常工作

的时间仍然显示页面加载后的实时时间(即使用户更改了计算机上的时间)

更改时间后,将显示警报(请参见下面的代码)。 问题是:一旦时间发生变化,警报每秒出现的次数将是无限的(但预期只有一次)。为什么会这样

$(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);
});

这实际上相当简单——脚本执行会暂停,直到messagebox关闭。当您关闭它时,计时器已经延迟,条件再次为真。您可以通过复制
警报[…]
行来测试它:如果您足够快地关闭第一条消息,第二条消息将显示低于1的内容


只要用一些基于HTML的浮动窗口替换
警报
,一切都会好起来。

这一切的目的是什么?这一切的目的是显示页面加载后的实时信息。从未处理过需要处理用户更改日期的情况。。。没有道理。。。但是只要使用
clearInterval
或其他什么。但是对我来说仍然没有太多意义。你能回答我的问题吗(如果可以的话)为什么自本地时间更改以来警报出现了无限次?其余的都很好。非常感谢。