很多场合用到倒计时,比方年会,生日,约会啊...废话不多说上代码

效果图:

index.html

<!DOCTYPE html><html lang="en">    <head>        <meta charset="UTF-8">        <meta name="viewport" content="width=device-width, initial-scale=1.0">        <title>Document</title>        <style>            body{                background-color: #2a3852;            }            #box {                display: flex;                justify-content: center;                align-items: center;                flex-direction: column;                margin-top: 300px;            }            #box h1 {                letter-spacing: 3px;                font-weight: 500;                color: #fff;            }            #time {                display: flex;                flex-direction: row;                line-height: 50px;            }            #time span {                font-size: 20px;                color: #fff;            }            #time strong {                text-align: center;                margin-left: 20px;                background-color: #3f5174;                border-radius: 10px;                width: 70px;                height: 50px;                display: block;            }        </style>    </head>    <body>        <div id="box">            <h1>间隔国庆节,还有</h1>            <div id="time">                <span id="day">**天</span>                <strong><span id="hour">**时</span></strong>                <strong><span id="minute">**分</span></strong>                <strong><span id="second">**秒</span></strong>            </div>        </div>        <script src="common.js"></script>        <script>            var daySpan = my$('day');            var hourSpan = my$('hour');            var minuteSpan = my$('minute');            var secondSpan = my$('second');            TimeRow();            setInterval(TimeRow, 1000)            function TimeRow() {                var end = new Date('2020-10-1 0:0:0');                var start = new Date();                var time = getInterval(start, end);                setInnerText(daySpan, time.day+'天');                setInnerText(hourSpan, time.hour+'时');                setInnerText(minuteSpan, time.minute+'分');                setInnerText(secondSpan, time.second+'秒');            }        </script>    </body></html>

common.js

function my$(id) {  return document.getElementById(id);}// 解决innerText和textContent的兼容性问题// 设置标签之间的内容function setInnerText(element, content) {  // 判断以后浏览器是否反对 innerText  if (typeof element.innerText === 'string') {    element.innerText = content;  } else {    element.textContent = content;  }}function getInterval(start, end) {  // 两个日期对象,相差的毫秒数  var interval = end - start;  // 求 相差的天数/小时数/分钟数/秒数  var day, hour, minute, second;  // 两个日期对象,相差的秒数  // interval = interval / 1000;  interval /= 1000;  day = Math.round(interval / 60 / 60 / 24);  hour = Math.round(interval / 60 / 60 % 24);  minute = Math.round(interval / 60 % 60);  second = Math.round(interval % 60);  return {    day: day,    hour: hour,    minute: minute,    second: second  }}