您好,登錄后才能下訂單哦!
這篇文章給大家介紹VBScript中怎么實現倒計時功能,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
---- 要實現倒計時,主要用到的是一個時間函數: DateDIFF(),它的作用是求出兩個日期之間的時間間隔。它的格式如下:
DateDIFF(format,Date1,Date2)
---- 其中,
format是指返回的格式。我們可以按相差多少天,相差多少小時,或相差多少秒的格式來返回。具體格式和意義請參見下表:
格式 意義
Yyyy 年
Q 一刻鐘
M 月
Y 一年的一天
D 天
W 星期
Ww 日期
H 小時
M 分
S 秒
----
在這里,我們只要求出兩個時間之間相差的秒數,然后可以根據1 天等于24小時,1小時等于 60 分, 1 分等于 60
秒來求出相差多少天、多少小時、多少分、多少秒。
---- Date1 和Date2 用來表示兩個日期,如果我們要求出
2000年到今天的時間差,只要把2000 年放在 Date1 的位置,而把現在的時間放在 Date2 的位置就可以了。
----
現在在理論上已經可行了,但是我們還必須加入一個標簽用來顯示時間,而且要加入一個定時器來定時地刷新標簽上的顯示。定時器的時間間隔定為多大為合適呢?這沒有一個定論,要根據條件而定。因為本程序的倒計時是以秒為最小單位的,所以我們必須能夠正確地對每秒鐘進行刷新。也就是說,定時器的間隔必須小于或等于
1000。但是由于定時器的1000并不是嚴格地與1秒相等,所以即使設為1000,也有可能“秒”不會及時地刷新,出現間斷跳躍。比如顯示完4秒后應該是3秒,然后才是2秒,但是由于刷新不及時,可能會出現顯示完
4 秒就顯示2
秒的情況,這就是刷新不及時造成的(但這并不影響倒計時的精確度)。我們再來把定時器的時間間隔設的很小看看,設為1吧,這樣,每隔大約1/1000秒,就會求一次值,這是決對精確的。但是又有一個問題,就是如果時間間隔太小,可能會搶占太多的系統時間,對本來就很慢的網絡來說,可是個不小的負擔。如果折中一下,可以把它設為200,即1秒內刷新5次,這就能滿足雙方面的需要了。
---- 我們來看一下相應的程序段:
< script LANGUAGE="VBscript" >
< !--
option explicit
dim MyDate ‘結果日期
dim
datesub ‘時間差
dim dd ‘相差天數
dim hh ‘相差小時數
dim mm ‘相差分數
dim ss ‘相差秒數
dim strTip ‘標簽提示
mydate=CDate("2000-1-1")
dim
mytime
Sub tmraumen_Timer()
datesub=datediff("s",now,mydate)
dd=fix(datesub/(60*60*24))
hh=fix((datesub-dd*60*60*24)/(60*60))
mm=fix((datesub-dd*60*60*24-hh*60*60)/60)
ss=fix(datesub-dd*60*60*24-HH*60*60-MM*60)
strtip="離2000年還有"
strtip=strtip + cstr(dd) + "天"
strtip=strtip + cstr(HH) + "小時"
strtip=strtip + cstr(MM) + "分鐘"
strtip=strtip + cstr(SS) + "秒"
lblaumen.caption=strtip
end sub
-- >
< /script
>
關于VBScript中怎么實現倒計時功能就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。