[Javascript] 自製計時器


首先要了解計時器和計數器不同喔,本文教的計時器蠻簡單的,可用來計算天數,可應用在「正數」或「倒數」,舉個例子來說:我畢業「X」天、再過「X」就是我的生日…等等的…!廢話不多說,只要你的網誌有支援Javascript,就可以使用這個自製的計時器…以下是計時器的語法:

計時器語法

前言<script language=”javascript”>
var Now=new Date();var Compare=new Date(2006,12-1,31);
Result=(Compare.getTime()-Now.getTime())/(24*60*60*1000);Result=Math.ceil(Result);
document.write(“<b>”+Result+”</b>”); </script> 結語

前言」和「結語」部分就是你要呈現的文字,請自行修改。
Now」是目前的時間,而「Compare」是要比較的時間,也就是紅色的部分,這裡要注意是(12-1)地方,這個欄位是代表月份,因為程式是以0為開頭(即0代表1月、1代表2月,以此類推),所以在(12-1)的部分,你可以換掉12的部分就可以了,例如六月你就改成(6-1),八月你就改成(8-1)。

而語法中的「Result就是最後的天數,剛有提到可以「正數」及「倒數」,其語法分述如下:
正數:Result=(Now.getTime()-Compare.getTime())
倒數:Result=(Compare.getTime()-Now.getTime())

請大家依自己的需求,將上面的正數或倒數替換到原來計時器語法的「藍色」部分;經這樣解說後,大家應該就可以知道,計時器語法中的範例是屬於倒數的吧。

當然,你也可以更進一步的計算到分、秒之類的,有需求的話再提出來吧…

PS:可以把上面的語法貼到自由欄位中,編輯時請不要使用自動換行….

Update : 06.11.02
根據定義:getTime() 會傳回自1970年1月1日午夜至目前的milliseconds(毫秒)數,故可推出下列等式!

1 second = 1000 毫秒
1 minute = second * 60
1 hour = minute * 60
1 day = hour * 24 = 1000 * 60 * 60 * 24 (文中的範例)
1 year = day * 365

因此,要計時成秒、分、時、年的狀況,只要在語法中除法分母的部分動手腳即可。