您的位置:首页 > Web前端 > JavaScript

JS实现简单的倒计时

2019-06-13 00:30 1516 查看

1、第一种

[code]<!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(),//当前时间

    h=today.getHours(),

    m=today.getMinutes(),

    s=today.getSeconds();

  var stopTime=new Date("Feb 9 2019 00:00:00"),//结束时间

    stopH=stopTime.getHours(),

    stopM=stopTime.getMinutes(),

    stopS=stopTime.getSeconds();

  var shenyu=stopTime.getTime()-today.getTime(),//倒计时毫秒数

    shengyuD=parseInt(shenyu/(60*60*24*1000)),//转换为天

    D=parseInt(shenyu)-parseInt(shengyuD*60*60*24*1000),//除去天的毫秒数

    shengyuH=parseInt(D/(60*60*1000)),//除去天的毫秒数转换成小时

    H=D-shengyuH*60*60*1000,//除去天、小时的毫秒数

    shengyuM=parseInt(H/(60*1000)),//除去天的毫秒数转换成分钟

    M=H-shengyuM*60*1000;//除去天、小时、分的毫秒数

    S=parseInt((shenyu-shengyuD*60*60*24*1000-shengyuH*60*60*1000-shengyuM*60*1000)/1000)//除去天、小时、分的毫秒数转化为秒

    document.getElementById("div").innerHTML=(shengyuD+"天"+shengyuH+"小时"+shengyuM+"分"+S+"秒"+"<br>");

    // setTimeout("clock()",500);

    setTimeout(clock,500);

}

</script>

</body>

</html>

 

 

运行效果:

2、第二种

[code]<!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();//现在距离1970年的毫秒数

    var newDate = new Date('2019/1/1 00:00:00');

    var newTime = newDate.getTime();//2019年距离1970年的毫秒数

    var second = Math.floor((newTime - oldTime) / 1000);//未来时间距离现在的秒数

    var day = Math.floor(second / 86400);//整数部分代表的是天;一天有24*60*60=86400秒 ;

    second = second % 86400;//余数代表剩下的秒数;

    var hour = Math.floor(second / 3600);//整数部分代表小时;

    second %= 3600; //余数代表 剩下的秒数;

    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测试上述代码,即可得到上述运行结果。

PS:这里再为大家推荐几款时间及日期相关工具供大家参考使用:

在线秒表工具:
http://tools.jb51.net/bianmin/miaobiao

在线日期/天数计算器:
http://tools.jb51.net/jisuanqi/date_jisuanqi

在线日期计算器/相差天数计算器:
http://tools.jb51.net/jisuanqi/datecalc

Unix时间戳(timestamp)转换工具:
http://tools.jb51.net/code/unixtime

 

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: