2011-07-14 35 views
0

我使用jqClock作爲插件在我的web應用程序中顯示時間,並且基思木倒計時顯示剩餘時間。我的問題是,如果你們中有些人遇到了問題,他們沒有同步?例如,如果時間是15:40:00,倒計時應該倒計時到15:41:00(所以基本上應該倒計數1分鐘)。然後例如我的jqclock顯示15:40:30和倒計時顯示31(而不是30 - 這是醜陋的在屏幕上看到,因爲我希望計時器同時更改它們的值)。任何幫助真的會是天賜之物,因爲我已經花了這麼多年了:(倒計時和時鐘插件不同步

編輯:我越想這件事,我認爲這將是更好的刪除jqClock插件和手動更新onTick事件的時鐘基思插件。但真的想聽到誰可能有同樣的問題的人的想法...

+2

僅基於計時器同步JavaScript事件不起作用(如您所見)。您的編輯對您應該執行的操作是準確的。 – wanovak

回答

1

免責聲明:我從來沒有使用過jqClock或基思插件

根據conting是怎麼做的, js定時器可能會漂移,內部js setTimeout函數不保證能夠睡眠指定的確切時間,它可以休眠的最短時間取決於操作系統+瀏覽器(可能還有客戶端硬件,因爲真正舊的系統沒有hpets或cpu計數器)。 該功能應該被視爲更多的是「睡眠至少這段時間,然後執行我的處理程序」。例如,如果系統繁忙,而不是2秒,setTimeout(2000)將最終睡眠10秒。 現在,如果2插件使用不同的定時器和處理技術,他們肯定會飄走...

正如你所說,我會更好的使用一個「心跳」的ideea並同步所有來源。