精品伊人久久大香线蕉,开心久久婷婷综合中文字幕,杏田冲梨,人妻无码aⅴ不卡中文字幕

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
團購類網站倒計時的js實現

團購類網站倒計時的js實現

by zhangxinxu from http://www.zhangxinxu.com
本文地址:http://www.zhangxinxu.com/wordpress/?p=987

一、如火如荼的團購網站

根據易觀國際提供的統計數據,截至2010年6月,中國市場團購網站數量已經突破400家。國內團購潮從今年2月份開始出現,在4~6月出現高峰,尤其是今年5月,一些大的網站如愛幫網、開心網都加入到團購中來,F團、團寶、酷團、515團購、1288團購、拉手、24券、滿座、窩窩、滿堂網、糯米網、第一團購等也紛紛上線。預計年底,我國團購類網站的數量將達到1000多家,甚至有業內人士稱“一天之內會有三到五家新的團購網站誕生”。俗稱“千團大戰”。

據說王興的美團網上線4個月就盈虧平衡了,還有,貌似企鵝、點評也來插足了。

不過這類團購網站是死是活、孰好孰壞不管我鳥事,我所關心的是一些讓我感興趣的前端內容,比如說,這類團購網站的倒計時。

雖然有的橫著睡覺,有的豎著休息,本質上都是一樣的,一樣的阿拉伯數字,一樣的一秒一變化。本文內容就是展示如何在前端使用js實現倒計時的UI效果。

二、demo與效果展示

為節約時間,我就直接套用了企鵝團的界面作為demo的背景。因為是倒計時,所以需要一個固定的時間,為了n年后,某位仁兄打開demo頁面依然在倒計時,所以我把倒計時時間設成了2050年7月30日中午12點整,還有40年才到,因為年代較長,所以有必要顯示剩余年份與月份。所以,最后demo頁面的效果如下圖所示:

您可以狠狠地點擊這里:團購倒計時demo

三、使用

倒計時其實就是Date類的一些計算與處理,主要是些繁瑣的工作。為了省掉他人的功夫以及方便后來的使用,我已經將倒計時主要處理方法封裝起來了。方法名為:fnTimeCountDown(參數1, 參數2)

具體使用如下,首先,調用倒計時js腳本,您可以在頁面的任何位置嵌入這段腳本:

<script type="text/javascript" src="http://www.zhangxinxu.com/study/js/timeCountDown.js"></script>

然后,調用方法fnTimeCountDown(參數1, 參數2)即可,于是就可以實現倒計時效果了,很簡單吧。

下面是重點了,就是關于這里的參數。參數1指的是截止的時間。我個人建議使用UTC()方法創建Date對象傳遞給Date構造函數。例如,Date.UTC(2030, 6, 27, 16, 34),表示的就是2030年7月27日161時34分0秒(月份需要加1),然后將這個參數替換“參數1”就可以了。具體來說就是:

var d = Date.UTC(2030, 6, 27, 16, 34);fnTimeCountDown(d, 參數2)

關于參數2,有點小復雜。參數2是個對象,同時也是個對象集,是顯示秒、分、時數值標簽的DOM對象集合,里面的對象名是固定的,不可自己定義,否則沒有效果的。考慮到擴展性,對象名從秒一直到年,具體如下:

{sec: 顯示秒數值的標簽對象,mini: 顯示分鐘數值的標簽對象,hour: 顯示小時數值的標簽對象,day: 顯示天數數值的標簽對象,month: 顯示月份數值的標簽對象,year: 顯示年數數值的標簽對象}

以上所有的參數都是可選的,如果哪個參數沒有,則不顯示時間變化,如果參數對應的DOM對象不存在,自然也沒有數值變化的。如果是上面部分展示的團購倒計時的話,只要下面三個子對象就足夠了:

{sec: 顯示秒數值的標簽對象,mini: 顯示分鐘數值的標簽對象,hour: 顯示小時數值的標簽對象}

舉個例子吧,有三個標簽,分別用來顯示剩余的小時數,分鐘數以及秒數的,其id分別是hour,mini,sec,如下所示:

<span id="hour"></span>時 <span id="mini"></span>分 <span id="sec"></span>秒

則第二個參數應該這么寫:

var obj = {sec: document.getElementById("sec"),mini: document.getElementById("mini"),hour: document.getElementById("hour")}

所以兩個參數合起來就是:

var d = Date.UTC(2030, 6, 27, 16, 34);var obj = {sec: document.getElementById("sec"),mini: document.getElementById("mini"),hour: document.getElementById("hour")}fnTimeCountDown(d, obj);

這段實例代碼所產生的效果如下所示:
045854

如果現在還沒有到2030年,則您應該可以看到上面秒前面的數值在不停的倒計時。

需要注意的是,參數2的對象集不支持jQuery對象,只能是DOM對象,如果您需要支持jQuery對象,需要修改原js方法中的innerHTML為jQuery的html()或是text()方法。

最后,提供下js腳本的下載,您可以狠狠地點擊這里:timeCountDown.js(1.75K, 右鍵 – [目標|鏈接]另存為)

四、簡短的結語

此腳本只是個人簡單測試了下,且js功力尚淺,難免還存有bug或是不準確之處。如果您發現了,歡迎指正,不甚感謝。也歡迎各種形式的討論與交流。

本站僅提供存儲服務,所有內容均由用戶發布,如發現有害或侵權內容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
【JavaWeb】84:jQuery框架
兼容火狐/IE等瀏覽器的JS獲取div內容的方法 - 學IT網 xueit.com
JS 控制CSS樣式的兩種有用的方法
JS操作網頁樣式總結
JavaScript基礎-07-DOM
網站打開速度慢 關鍵在緩存
更多類似文章 >>
生活服務
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯系客服!

聯系客服

主站蜘蛛池模板: 兴隆县| 太仓市| 防城港市| 蓬安县| 阳信县| 凉城县| 眉山市| 固阳县| 弥勒县| 洛宁县| 古浪县| 长寿区| 夏邑县| 册亨县| 土默特左旗| 浮梁县| 横山县| 康平县| 鹤峰县| 紫阳县| 宜良县| 耿马| 利辛县| 荔浦县| 青铜峡市| 扎兰屯市| 于都县| 万盛区| 沾益县| 南川市| 茌平县| 昭平县| 大名县| 山西省| 和林格尔县| 沿河| 依安县| 英山县| 惠来县| 桂平市| 枝江市|