利用js实现倒计时

  倒计时 这个名词并不陌生,比如:天猫,京东等一些网上商城都会推出一些限时特价商品,今天我们就一起编写一个属于自己的倒计时;

    

    Ps: 首先做一件事情的时候,不应该盲目的去做,应该首当其冲的去想,脑子里面出现大概的思路。

 

一、首先我们应该在HTML放一个容器(这里面没有什么可解释的就是为了呈现倒计时)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<! DOCTYPE  html>
< html  lang="en">
< head >
     < meta  charset="UTF-8">
     < title >倒计时制作</ title >
     < style >
         .otime span{display:inline-block;padding: 10px 20px;opacity: 0.5;margin-left: 10px;color:red;}
     </ style >
</ head >
< body >
     < div  class="text">
        < p >距离元旦还剩余:< span  id="time" class="otime"></ span ></ p >
        < p >当前时间:< span  id="time1" class="otime"></ span ></ p >
     </ div >
</ body >
</ html >

 

二、编写JS代码

复制代码
//这个函数是为了适应格式 比如:01分01秒;
    function p (n){
        return n < 10 ? '0'+ n : n;  
    }

    //倒计时函数
    function newTime (){
        //定义当前时间
        var startTime = new Date(); 
        //定义结束时间
        var endTime = new Date("2017/1/1 00:00:00");
        
        //算出中间差并且已毫秒数返回; 除以1000将毫秒数转化成秒数方便运算;
        var countDown = (endTime.getTime() - startTime.getTime())/1000;
        
        //获取天数 1天 = 24小时  1小时= 60分 1分 = 60秒
        var oDay = parseInt(countDown/(24*60*60));
        
        //获取小时数 
        //特别留意 %24 这是因为需要剔除掉整的天数;
        var oHours = parseInt(countDown/(60*60)%24);
        
        //获取分钟数
        //同理剔除掉分钟数
        var oMinutes = parseInt(countDown/60%60);
        
        //获取秒数
        //因为就是秒数  所以取得余数即可
        var oSeconds = parseInt(countDown%60);
        
        //下面就是插入到页面事先准备容器即可;
        var html =  "<span>" + p(oDay) + "天</span>"+ "<span>" + p(oHours) + "时</span>" + "<span>" + p(oMinutes) + "分</span>" +"<span>" + p(oSeconds) + "秒</span>";
        document.getElementById('time').innerHTML = html;
        
        //别忘记当时间为0的,要让其知道结束了;
        if(countDown < 0){
            document.getElementById('time').innerHTML = '元旦到了';
        }
    }
   
复制代码

 

 这样就实现了一个计时器的效果,如果想要好看一点,只需要加点样式即可;

 

三、制作当前时间的秒表(也就是第二个容器需要做的)

 

1、直接编写JS代码 

复制代码
 1 function oldTime (){
 2         var oDate = new Date();
 3         //获取年
 4         var oFullyear = oDate.getFullYear();
 5         //获取月份
 6         var oMonth = oDate.getMonth()+1;
 7         //获取日期
 8         var oDta= oDate.getDate();
 9         //获取星期
10         var oDay = oDate.getDay();
11         var week = ['星期日','星期一','星期二','星期三','星期四','星期五','星期六'];
12         //获取小时
13         var oHours = oDate.getHours();
14         //获取分钟
15         var oMinutes = oDate.getMinutes();
16         //获取秒数
17         var oSeconds = oDate.getSeconds();
18         //插入到容器中
19         var b = "<span>"+ oFullyear +"年</span>" + "<span>"+ oMonth +"月</span>" + "<span>"+ oDta+"日</span>" + "<span>"+ week[oDay] +"</span>" + "<span>"+ p(oHours) +"时</span>" + "<span>"+ p(oMinutes) +"分</span>" + "<span>"+ p(oSeconds) +"秒</span>";
20         document.getElementById('time1').innerHTML = b;
21 
22     }
复制代码

 

 ---》如果学会了,不妨自己试一下,看看能不能做出更高级的计时哦;

转载于:https://www.cnblogs.com/jianxian/p/9198859.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值