javascript 學(xué)習(xí)筆記(四) 倒計(jì)時(shí)程序代碼
更新時(shí)間:2011年04月08日 00:23:32 作者:
javascript 學(xué)習(xí)筆記(四) 倒計(jì)時(shí)程序代碼,需要的朋友可以參考下。
首先看全部完整代碼:
[Ctrl+A 全選 注:引入外部Js需再刷新一下頁面才能執(zhí)行]
html部分代碼:
可在文本框中輸入倒計(jì)時(shí)的時(shí)間,如果當(dāng)前時(shí)間小于截止時(shí)間,則正常返回,反之,則返回距離截止日期到現(xiàn)在的時(shí)間
<p>
<label for="deadline">截止日期</label>
<input type="text" value="2011-06-11" id="deadline" />
<input type="button" value="開始倒計(jì)時(shí)" onclick="window.setInterval('countDown(\'deadline\')', 1000)" />
</p>
<p id="showTime"></p>
javascript部分代碼:
function countDown(endDate) {
var now = new Date();
var deadtime = document.getElementById(endDate);
var deadline = new Date(deadtime.value);
//本地時(shí)間與格林威治標(biāo)準(zhǔn)時(shí)間 (GMT) 的分鐘差
var timeDiff = now.getTimezoneOffset();
//此處有些不解,如果把分鐘差轉(zhuǎn)化成毫秒應(yīng)該是timeDiff*60*1000,但是這樣返回的數(shù)據(jù)不正確!
var leave = Math.abs(deadline.getTime() - now.getTime() + timeDiff*60);
var minute = 1000 * 60;
var hour = minute * 60;
var day = hour * 24;
var countDay = Math.floor(leave/day);
//var countHour = Math.floor((leave - day*countDay)/hour); 兩種計(jì)算思路
var countHour = Math.floor(leave/hour - countDay*24);
var countMinute = Math.floor(leave/minute) - countDay*24*60 - countHour*60;
var countSecond = Math.floor(leave/1000) - countDay*24*60*60 - countHour*60*60 - countMinute*60;
var outStr = "";
if(deadline < now) {
outStr = "距離"+deadtime.value+"已有"+countDay+"天"+countHour+"小時(shí)"+countMinute+"分"+countSecond+"秒";
} else {
outStr = "距離"+deadtime.value+"還差"+countDay+"天"+countHour+"小時(shí)"+countMinute+"分"+countSecond+"秒";
}
var showTime = document.getElementById("showTime");
showTime.innerHTML = outStr;
}
[Ctrl+A 全選 注:引入外部Js需再刷新一下頁面才能執(zhí)行]
html部分代碼:
可在文本框中輸入倒計(jì)時(shí)的時(shí)間,如果當(dāng)前時(shí)間小于截止時(shí)間,則正常返回,反之,則返回距離截止日期到現(xiàn)在的時(shí)間
復(fù)制代碼 代碼如下:
<p>
<label for="deadline">截止日期</label>
<input type="text" value="2011-06-11" id="deadline" />
<input type="button" value="開始倒計(jì)時(shí)" onclick="window.setInterval('countDown(\'deadline\')', 1000)" />
</p>
<p id="showTime"></p>
javascript部分代碼:
復(fù)制代碼 代碼如下:
function countDown(endDate) {
var now = new Date();
var deadtime = document.getElementById(endDate);
var deadline = new Date(deadtime.value);
//本地時(shí)間與格林威治標(biāo)準(zhǔn)時(shí)間 (GMT) 的分鐘差
var timeDiff = now.getTimezoneOffset();
//此處有些不解,如果把分鐘差轉(zhuǎn)化成毫秒應(yīng)該是timeDiff*60*1000,但是這樣返回的數(shù)據(jù)不正確!
var leave = Math.abs(deadline.getTime() - now.getTime() + timeDiff*60);
var minute = 1000 * 60;
var hour = minute * 60;
var day = hour * 24;
var countDay = Math.floor(leave/day);
//var countHour = Math.floor((leave - day*countDay)/hour); 兩種計(jì)算思路
var countHour = Math.floor(leave/hour - countDay*24);
var countMinute = Math.floor(leave/minute) - countDay*24*60 - countHour*60;
var countSecond = Math.floor(leave/1000) - countDay*24*60*60 - countHour*60*60 - countMinute*60;
var outStr = "";
if(deadline < now) {
outStr = "距離"+deadtime.value+"已有"+countDay+"天"+countHour+"小時(shí)"+countMinute+"分"+countSecond+"秒";
} else {
outStr = "距離"+deadtime.value+"還差"+countDay+"天"+countHour+"小時(shí)"+countMinute+"分"+countSecond+"秒";
}
var showTime = document.getElementById("showTime");
showTime.innerHTML = outStr;
}
相關(guān)文章
JavaScript基礎(chǔ)語法與數(shù)據(jù)類型介紹
這篇文章介紹了JavaScript基礎(chǔ)語法與數(shù)據(jù)類型,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-02-02javascript:void(0)的含義及用法實(shí)例
這篇文章介紹了javascript:void(0)的含義及用法實(shí)例,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-12-12簡單學(xué)習(xí)JavaScript中的for語句循環(huán)結(jié)構(gòu)
這篇文章主要介紹了簡單學(xué)習(xí)JavaScript中的for語句循環(huán)結(jié)構(gòu),是JavaScript入門學(xué)習(xí)中的基礎(chǔ)知識,需要的朋友可以參考下2015-11-11javascript內(nèi)置對象arguments詳解
這篇文章主要介紹了javascript內(nèi)置對象arguments,實(shí)例講解arguments是什么怎么用,需要的朋友可以參考下2014-03-03javascript函數(shù)聲明和函數(shù)表達(dá)式區(qū)別分析
本文向大家展示了javascript中函數(shù)聲明和函數(shù)表達(dá)式的概念及區(qū)別,介紹的非常全面,也很詳盡,這里推薦給大家2014-12-12JavaScript中的分號插入機(jī)制詳細(xì)介紹
這篇文章主要介紹了JavaScript中的分號插入機(jī)制詳細(xì)介紹,本文講解JavaScript中各種情況下的分號插入機(jī)制,需要的朋友可以參考下2015-02-02