原生JS實現(xiàn)簡單的倒計時功能示例
本文實例講述了原生JS實現(xiàn)簡單的倒計時功能。分享給大家供大家參考,具體如下:
1、第一種
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>chabaoo.cn JS倒計時</title>
</head>
<body>
<div id="div"></div>
<script type="text/javascript">
window.onload=clock;
function clock(){
var today=new Date(),//當(dāng)前時間
h=today.getHours(),
m=today.getMinutes(),
s=today.getSeconds();
var stopTime=new Date("Feb 9 2019 00:00:00"),//結(jié)束時間
stopH=stopTime.getHours(),
stopM=stopTime.getMinutes(),
stopS=stopTime.getSeconds();
var shenyu=stopTime.getTime()-today.getTime(),//倒計時毫秒數(shù)
shengyuD=parseInt(shenyu/(60*60*24*1000)),//轉(zhuǎn)換為天
D=parseInt(shenyu)-parseInt(shengyuD*60*60*24*1000),//除去天的毫秒數(shù)
shengyuH=parseInt(D/(60*60*1000)),//除去天的毫秒數(shù)轉(zhuǎn)換成小時
H=D-shengyuH*60*60*1000,//除去天、小時的毫秒數(shù)
shengyuM=parseInt(H/(60*1000)),//除去天的毫秒數(shù)轉(zhuǎn)換成分鐘
M=H-shengyuM*60*1000;//除去天、小時、分的毫秒數(shù)
S=parseInt((shenyu-shengyuD*60*60*24*1000-shengyuH*60*60*1000-shengyuM*60*1000)/1000)//除去天、小時、分的毫秒數(shù)轉(zhuǎn)化為秒
document.getElementById("div").innerHTML=(shengyuD+"天"+shengyuH+"小時"+shengyuM+"分"+S+"秒"+"<br>");
// setTimeout("clock()",500);
setTimeout(clock,500);
}
</script>
</body>
</html>
運行效果:

2、第二種
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>chabaoo.cn js倒計時</title>
<style>
*{
margin: 0;
padding:0;
}
p {
font-size: 80px;
text-align: center;
}
p span {
color: red;
}
p span.time {
color: black
}
body{padding-top:200px;}
</style>
</head>
<body>
<p>距離2019年還有</p>
<p><span></span></p>
<script>
var oSpan = document.getElementsByTagName('span')[0];
function tow(n) {
return n >= 0 && n < 10 ? '0' + n : '' + n;
}
function getDate() {
var oDate = new Date();//獲取日期對象
var oldTime = oDate.getTime();//現(xiàn)在距離1970年的毫秒數(shù)
var newDate = new Date('2019/1/1 00:00:00');
var newTime = newDate.getTime();//2019年距離1970年的毫秒數(shù)
var second = Math.floor((newTime - oldTime) / 1000);//未來時間距離現(xiàn)在的秒數(shù)
var day = Math.floor(second / 86400);//整數(shù)部分代表的是天;一天有24*60*60=86400秒 ;
second = second % 86400;//余數(shù)代表剩下的秒數(shù);
var hour = Math.floor(second / 3600);//整數(shù)部分代表小時;
second %= 3600; //余數(shù)代表 剩下的秒數(shù);
var minute = Math.floor(second / 60);
second %= 60;
var str = tow(day) + '<span class="time">天</span>'
+ tow(hour) + '<span class="time">小時</span>'
+ tow(minute) + '<span class="time">分鐘</span>'
+ tow(second) + '<span class="time">秒</span>';
oSpan.innerHTML = str;
}
getDate();
setInterval(getDate, 1000);
</script>
</body>
</html>
運行效果:

感興趣的朋友可以使用在線HTML/CSS/JavaScript代碼運行工具:http://tools.jb51.net/code/HtmlJsRun測試上述代碼,即可得到上述運行結(jié)果。
PS:這里再為大家推薦幾款時間及日期相關(guān)工具供大家參考使用:
在線秒表工具:
http://tools.jb51.net/bianmin/miaobiao
在線日期/天數(shù)計算器:
http://tools.jb51.net/jisuanqi/date_jisuanqi
在線日期計算器/相差天數(shù)計算器:
http://tools.jb51.net/jisuanqi/datecalc
Unix時間戳(timestamp)轉(zhuǎn)換工具:
http://tools.jb51.net/code/unixtime
更多關(guān)于JavaScript相關(guān)內(nèi)容還可查看本站專題:《JavaScript時間與日期操作技巧總結(jié)》、《JavaScript查找算法技巧總結(jié)》、《JavaScript錯誤與調(diào)試技巧總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》及《JavaScript數(shù)學(xué)運算用法總結(jié)》
希望本文所述對大家JavaScript程序設(shè)計有所幫助。
相關(guān)文章
使用electron實現(xiàn)百度網(wǎng)盤懸浮窗口功能的示例代碼
這篇文章主要介紹了使用electron實現(xiàn)百度網(wǎng)盤懸浮窗口功能的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-10-10
JavaScript實現(xiàn)字符串轉(zhuǎn)JSON對象的4種方法代碼
這篇文章主要給大家介紹了關(guān)于JavaScript實現(xiàn)字符串轉(zhuǎn)JSON對象的4種方法,使用ajax的開發(fā)項目過程中,經(jīng)常需要將json格式的字符串返回到前端,前端解析成js對象(JSON),需要的朋友可以參考下2023-10-10
javascript 根據(jù)歌名獲取播放地址和歌詞內(nèi)容
在前幾天做在線聽歌的過程中,碰到了根據(jù)歌名獲取播放地址和LRC文件內(nèi)容的問題,今晚花了幾個小時把接口整理了一下2009-06-06
javascript宿主對象之window.navigator詳解
這篇文章主要為大家詳細(xì)介紹了javascript宿主對象之window.navigator,具有一定的參考價值,感興趣的小伙伴們可以參考一下2016-09-09

