它可以在JavaScript中完成,無需插件。
您需要獲取當前的日期時間,直到分母小於顯示的分母。用你的例子,這意味着你需要把所有東西都縮小到毫秒。
var currentTime = new Date(n.getFullYear(), n.getMonth(), n.getDate(), n.getHours(), n.getMinutes(), n.getSeconds(), n.getMilliseconds());
然後,您會發現現在和所需時間之間的差異。這是以毫秒爲單位給你的。
var diff = endtime - currentTime;
因爲這是以毫秒爲單位返回你需要將它們轉換成秒,分鐘,小時,天等..這意味着建立多毫秒如何在每個分母。然後你可以使用mod和divide來返回每個單位所需的數字。見下文。
var miliseconds = 1;
var seconds = miliseconds * 1000;
var minutes = seconds * 60;
var hours = minutes * 60;
var days = hours * 24;
var years = days * 365;
//Getting the date time in terms of units
//Floored so that they go together (to get just year/days/hours etc.. by themselves you need to use Math.round(diff/desired unit);
var numYears = Math.floor(diff/years);
var numDays = Math.floor((diff % years)/days);
var numHours = Math.floor((diff % days)/hours);
var numMinutes = Math.floor((diff % hours)/minutes);
var numSeconds = Math.round((diff % minutes)/seconds);
一旦你想要顯示的分母,你可以通過不同的方法返回到html頁面。例如:
document.getElementById("tyears").innerHTML = numYears;
總結你的方法。但是,爲了使它在設定的時間間隔內運行(這就是爲什麼在JavaScript函數中更新HTML顯示的原因),您需要調用以下函數,給出您的函數名稱並以毫秒爲單位提供您的間隔。
//Call the count down timer function every second (measured in miliseconds)
setInterval(countDown(endtime), 1000);
那麼,有很多小問題。你有哪些問題? – Quentin 2010-02-08 13:22:15