商城倒计时代码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>商城倒计时</title>
    <style>
        *{margin: 0px;padding: 0px}
        body{width: 100%;height: 100%;background: #333;}
        .box{width:200px;height:280px;margin: 0 auto;background: url("../image/countdownBg.png") no-repeat center;background-size: 100% 100%;margin-top:100px}
        .countDown{padding:20px 0}
        .countDown .title{font-size:34px;color: #ffffff;text-align: center}
        .countDown .titleEn{font-size: 20px;text-align: center;color: rgba(255,255,255,0.3);}
        .countDown .bolt{width: 20px;height: 35px;background: url(../image/bolt.png) no-repeat center;margin: 20px auto;}
        .countDown .countDownOver{font-size: 16px; text-align: center;color: #ffffff;}
        .countDown .countDownTime {width: 175px;height: 40px;background: url(../image/countDownTime.png) no-repeat center; margin: 20px auto 0 auto;}
        .countDown .countDownTime p { font-size: 26px;color: #ffffff;font-weight: bold; float: left;width: 40px;height: 40px;text-align: center;line-height: 40px;margin-right: 5px;}
        .countDown .countDownTime p:last-child{margin-right: 0px}
    </style>
</head>
<body>
<div class="box">
    <div class="countDown">
        <h1 class="title">阳光采购</h1>
        <p class="titleEn">FLASH DEALS</p>
        <div class="bolt"></div>
        <p class="countDownOver"></p>
        <div class="countDownTime clearfix"></div>
    </div>
</div>
</body>
<script src="../js/jquery-2.2.4.min.js"></script>
<script>
//    注意的坑
//    1.当前的时间获取一次,是一个定值,必须使用定时器才能时刻变化当前的时间。所以要以参数的形式传进去
//    2.给出的时间格式  参数有5种
        //new Date("month dd,yyyy hh:mm:ss");
        //new Date("month dd,yyyy");
        //new Date(yyyy,mth,dd,hh,mm,ss);
        //new Date(yyyy,mth,dd);
        //new Date(ms);
//    3.从后台拿到的数据一般为字符串,时间格式不支持
//        1.如果是时间戳的话,可以使用 number和parseInt进行转换
//        2.如果是2009-6-28 15:23格式,可以使用正则进行转换,str.replace(/-/g,"/") <解释:/-/g 是正则表达式表示将所有短横线-替换为斜杠/其中g表示全局替换>
//    4.veracityTime 时间差,如果想要精确的时间控制,是不能依赖于JavaScript的setTimeout或者setInterval函数的
//    5.setInterval()是在每隔指定的毫秒数循环调用函数或表达式,直到clearInterval把它清除,所以当我们定时器设置之后,当不需要进行定时器的时候,则用clear进行清空定时器。
    $(function () {
        var start_time=new Date("2018","7","8","14");   //开始的时间 月份只有0-11,所以要减一;
        var end_time=new Date("2018","7","8","14");     //结束的时间
        function lastTime(times,nowTime) {              //将时间进行换算  times指的是时间开始时间或结束时间,nowTime只的是当前的时间
            var differenceTime=-480-nowTime.getTimezoneOffset();   //北京时间和地区的时间差,一般为0
            var leftTime=(times.getTime()-nowTime.getTime()+differenceTime*60000);  //相差的时间戳
            var day=Math.floor(leftTime/(1000*60*60*24));
            var hour = Math.floor(leftTime / (1000 * 3600)) - (day * 24);
            var minute = Math.floor(leftTime / (1000 * 60)) - (day * 24 * 60) - (hour * 60);
            var second = Math.floor(leftTime / (1000)) - (day * 24 * 60 * 60) - (hour * 60 * 60) - (minute * 60);
            $('.countDownTime').html('<p class="day">'+(day<10?"0"+day:day)+'</p><p class="hour">'+(hour<10?"0"+hour:hour)+'</p><p class="minute">'+(minute<10?"0"+minute:minute)+'</p><p class="second">'+(second<10?"0"+second:second)+'</p>')
        }
        function setLeftTime() {
//          开始时间肯定比结束时间小  所以就没做判断
            var now_Time=new Date(); //当前时间应该随时变化,用定时器进行刷新
            var veracityTime=now_Time.getMinutes() + ':' + now_Time.getSeconds() + ':' + now_Time.getMilliseconds();
            console.log(veracityTime);//使用定时器计算毫秒数  验证js的准确性
            if(now_Time<start_time){  //当现在的时间小于开始的时间
                $('.countDownOver').html("距离抽奖还有");
                lastTime(start_time,now_Time)
            }else if(now_Time<end_time){//当现在的时间大于开始的时间小于现在结尾的时间
                $('.countDownOver').html("距离抽奖结束还有");
                lastTime(end_time,now_Time)
            }else {  //当现在的时间大于结束的时间,说明活动结束。
                $('.countDownOver').html("敬请期待");
                lastTime(now_Time,now_Time);
                clearInterval(i);
            }
        }
        setLeftTime();
        var i=setInterval(setLeftTime,1000)
    });
</script>
</html>

对应的背景图片:
这里写图片描述
这里写图片描述
这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值