关于javascript:JavaScript如何实现页面倒计时含源码

41次阅读

共计 1384 个字符,预计需要花费 4 分钟才能阅读完成。

在一些电商网站的流动页上会经常出现折扣商品的倒计时标记,显示离流动完结还剩 x 天 x 小时 X 分 X 秒,像这样的倒计时成果就能够利用日期对象来实现。
倒计时的外围算法是输人的工夫减去当初的工夫,得出的剩余时间就是要显示的倒计时工夫,这须要把工夫都转化成工夫戳 (毫秒数) 来进行计算,把失去的毫秒数转换为天数、小时、分数、秒数。具体示例代码如下。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>JavaScript 倒计时代码 | 黑马程序员 web 前端培训高手班 http://web.itheima.com</title>
    <style>
        body{background-color: #f5f5f5;}
        p{
            margin: 100px auto;
            width: 500px;
            text-align: center;
            font-weight: 700;
            font-size: 16px;
            background-color: yellow;
        }
    </style>
</head>
<body>
    <div>
        <p id="t"></p>
    </div>
</body>
<script>
    // 倒计时函数
    function countDown(time) {var nowTime = +new Date();
        var inputTime = +new Date(time);
        var times = (inputTime - nowTime) / 1000;
        var d = parseInt(times / 60 / 60 / 24);
        d = d < 10 ? '0' + d : d;
        var h = parseInt(times / 60 / 60 % 24);
        h = h < 10 ? '0' + h : h;
        var m = parseInt(times / 60 % 60);
        m = m < 10 ? '0' + m : m;
        var s = parseInt(times % 60);
        s = s < 10 ? '0' + s : s;
        return d + '天' + h + '时' + m + '分' + s + '秒';
    }
    // 设置终止工夫
    time = '2021-11-30 10:57:56';

    //  设置定时器 1 秒运行 1 次
    window.setInterval(function(){time1 = countDown(time);
        let pTime = document.getElementById('t');
        pTime.innerHTML = time1;
    }, 1000);
</script>
</html>

上述代码中,第 2 行的 +new Date()是 new Date().getTime()代码的简写,返回以后工夫戳,单位是毫秒。第 3 行代码是设置流动的完结工夫戳。第 4 行代码计算残余毫秒数,须要转换为秒数,转换规则为 1 秒 /1000 毫秒。第 5~13 行代码计算天数小、小时 h、分时 m、秒数 s,并应用 return 返回。第 16 行代码输入间隔指定完结日期 2021-11-30 10:57:56 还剩多少工夫。

代码运行成果如下:

相干文章:
Math 对象的罕用办法有哪些? 如何应用?
JavaScript 中 let 和 var 和 const 有什么区别?
javascript 开发工具有哪些?

正文完
 0