倒计时和时钟插件不同步

时间:2011-07-14 13:49:09

标签: php jquery jquery-plugins

我使用jqClock作为插件在我的网络应用程序中显示时间,并使用keith wood倒计时显示剩余时间。我的问题是,如果你们中的一些人有问题,他们没有被同步?例如,如果时间是15:40:00并且倒计时应该倒计时到15:41:00(所以基本上它应该倒计时1分钟)。然后例如我的jqclock显示15:40:30并且倒计时显示31(而不是30 - 这在屏幕上看起来很难看,因为我希望定时器同时更改它们的值)。任何帮助真的很天赐,因为我已经花了很多年时间:(

编辑:我想的越多,我认为最好删除jqClock插件并在keith插件的onTick事件中手动更新时钟..但是真的很想听听那些可能有过的人的想法同样的问题...

1 个答案:

答案 0 :(得分:1)

免责声明:我从未使用过jqClock或keith插件。

根据conting的完成方式,js计时器可能会漂移。内部js setTimeout函数不保证在指定的确切时间内休眠。它可以睡眠的最短时间取决于操作系统+浏览器(可能在客户端硬件上,因为真正的旧系统没有hpets或cpu计数器)。 该函数应该被视为“至少在这段时间内休眠,然后执行我的处理程序”。例如,如果系统忙,setTimeout(2000)将最终休眠10秒,而不是2秒。 现在,如果2个插件使用不同的定时器和处理技术,它们肯定会消失......

正如你所说,我有一个更好的想法来使用单一的“心跳”并同步来自该源的所有内容。