取決於你如何實現它。
如果您只讀了一次,並依賴於setInterval或/和setTimeout來獲得準確性,那麼是的..他們可能會失去同步。
如果你總是得到當前在計算中使用的時間,那麼它會像系統其他部分不同步一樣意味着它跟隨計算機的時鐘。
改變我的答案在JavaScript/jQuery Countdown添加你
var end = new Date('13 Apr 2012 13:30:00');
var _second = 1000;
var _minute = _second * 60;
var _hour = _minute * 60;
var _day = _hour *24;
var timer;
function showRemaining()
{
var now = new Date();
var distance = end - now;
if (distance < 0) {
// handle expiry here..
clearInterval(timer); // stop the timer from continuing ..
//alert('Expired'); // alert a message that the timer has expired..
}
var days = Math.floor(distance/_day);
var hours = Math.floor((distance % _day)/_hour);
var minutes = Math.floor((distance % _hour)/_minute);
var seconds = Math.floor((distance % _minute)/_second);
var milliseconds = distance % _second;
var countdownElement = document.getElementById('timer');
countdownElement.innerHTML = days + 'd ' +
hours + 'h ' +
minutes + 'm ' +
seconds + 's ' +
milliseconds + 'ms';
}
timer = setInterval(showRemaining, 10);
毫秒但由於需要更復雜的計算,以28-31因子天月和閏年它不處理的月份和年份..
演示在http://jsfiddle.net/TaHtz/2/
http://stackoverflow.com/questions/8067488/how-to-show-milliseconds-in -count-down-timer-javascript – Ghokun 2012-04-11 19:29:06
是的,這是事實,他們變得不同步。作爲一名系統管理員,我知道計算機時鐘可以在短短几周內完成(10秒或20秒)。幾個月後,他們會在幾分鐘內得到解脫。定期同步到標準時間服務器很重要。因此,製作基於JavaScript的計數將取決於計算機時鐘的準確性。 – 2012-04-11 19:45:36
既然你想在很多天,甚至是幾周或幾個月的時間內倒數,你想在哪裏運行這個程序?在Web服務器上?在你的臺式電腦上?在手機上? – 2012-04-11 19:48:32