溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

原生JS實現(xiàn)簡單的倒計時功能示例

發(fā)布時間:2020-10-20 18:12:30 來源:腳本之家 閱讀:152 作者:鄒大叔 欄目:web開發(fā)

本文實例講述了原生JS實現(xiàn)簡單的倒計時功能。分享給大家供大家參考,具體如下:

1、第一種

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>www.jb51.net 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>

運行效果:

原生JS實現(xiàn)簡單的倒計時功能示例

2、第二種

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>www.jb51.net 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>

運行效果:

原生JS實現(xiàn)簡單的倒計時功能示例

感興趣的朋友可以使用在線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è)計有所幫助。

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI