美文网首页
网页或h5——倒计时的两种方法

网页或h5——倒计时的两种方法

作者: 我是Alex | 来源:发表于2020-04-24 16:52 被阅读0次
    image.png
    <!-- 倒计时 -->
    <div class="count_down">
        还剩
        <em>0</em>
        <em>2</em>
        天
        <em>1</em>
        <em>5</em>
        时
        <em>0</em>
        <em>0</em>
        分
    </div> 
    // css
    .header .count_down {
        font-size: 36/@rem;
        color: #999999;
        line-height: 60/@rem;
        display: flex;
        justify-content: center;
        align-items: center;
        margin-top: 15/@rem;
    }
    .header .count_down em {
        display: block;
        width: 52/@rem;
        height: 60/@rem;
        background-color: #00c0ff;
        border-radius: 2/@rem;
        font-style: normal;
        font-size: 56/@rem;
        color: #FFFFFF;
        text-align: center;
        line-height: 60/@rem;
        margin: 0 6/@rem;
    }
    
    countDown();
    function addZero(i) {
        return i < 10 ? "0" + i: i + "";
    }
    function countDown() {
         // 当前时间戳
        var nowtime = new Date();
        // 结束时间戳
        var endtime = new Date("2021/04/24,16:00:00");
        // 剩余时间(秒)  [除以1000是因为不需要毫秒]
        var lefttime = parseInt((endtime.getTime() - nowtime.getTime()) / 1000);
        // 返回剩余d天
        var d = parseInt(lefttime / (24*60*60));
        // 返回剩余h小时
        var h = parseInt(lefttime / (60 * 60) % 24);
        // 返回剩余m分
        var m = parseInt(lefttime / 60 % 60);
        // 返回剩余s秒
        // var s = parseInt(lefttime % 60);
        // ad 为 十位数字
        var ad=0;
        // bd 为 个位数字
        var bd=0;
        var ah = 0;
        var bh = 0;
        var am = 0;
        var bm = 0;
        // var as = 0;
        // var bs = 0;
        //若是个位数字 则在前面+0下同    例如:4 = 04 
        d = addZero(d);
        // 分割是两位时间戳,下同
        ad=d.slice(d.length-2,d.length-1);
        bd=d.slice(d.length-1,d.length);
        h = addZero(h);
        ah=h.slice(h.length-2,h.length-1);
        bh=h.slice(h.length-1,h.length);
        m = addZero(m);
        am=m.slice(m.length-2,m.length-1);
        bm=m.slice(m.length-1,m.length);
        // s = addZero(s);
        // as=s.slice(s.length-2,s.length-1);
        // bs=s.slice(s.length-1,s.length);
                                    
        // 倒计时标签内没有子元素时
        // document.querySelector(".count_down").innerHTML = `活动倒计时  ${d}  01 天 ${h} 时 ${m} 分 ${s} 秒`;
        // 倒计时标签内有子元素时
        document.querySelector(".count_down").innerHTML = `还剩<em>${ad}</em><em>${bd}</em>天<em>${ah}</em><em>${bh}</em>时<em>${am}</em><em>${bm}</em>分`;
        // 活动已结束
        if (lefttime <= 0) {
               document.querySelector(".count_down").innerHTML = "活动已结束";
               return;
        }
        setTimeout(countDown, 1000);
        }
    }
    
    // 倒计时
    function getRTime(endTime){
        var BargainTimer = setInterval(function () {
            var NowTime = new Date();
            var t = endTime * 1000 - NowTime.getTime();
            if(t>0){
                var d=Math.floor(t/1000/60/60/24);
                var h=Math.floor(t/1000/60/60%24);
                var m=Math.floor(t/1000/60%60);
                var s=Math.floor(t/1000%60);
                if(d<10) d='0'+d;
                if(h<10) h='0'+h;
                if(m<10) m='0'+m;
                if(s<10) s='0'+s;
                document.getElementById("t_d").innerHTML = d ;
                document.getElementById("t_h").innerHTML = h ;
                document.getElementById("t_m").innerHTML = m ;
                document.getElementById("t_s").innerHTML = s ;
            }else{
                clearInterval(BargainTimer);
            }
        },1000);
    }
    

    相关文章

      网友评论

          本文标题:网页或h5——倒计时的两种方法

          本文链接:https://www.haomeiwen.com/subject/kngfwhtx.html