美文网首页
Web前端——倒计时效果

Web前端——倒计时效果

作者: 艳晓 | 来源:发表于2017-04-18 15:24 被阅读553次

    一、JavaScript Date对象

    getYear() 获取年份,获取年最好用
    getFullYear()获取完整格式年份,如2014,一般用这个
    getMonth()获取月,从0开始(0~11),要返回当前月份要加1
    getDate()获取日(1~31)
    getDay()获取星期几(0~6)
    getHours()获取小时(0~23)
    getMinutes()获取分钟数(0~59)
    getSeconds()获取秒数(0~59)
    getTime()获取毫秒数
    定义日期对象
    var myDate = new Date()
    myDate存放了当前日期对象,然后可以通过日期对象的函数获取具体需要的数据,比如,年月日等等

    二、简单时间显示

    效果:2017年4月18日 星期二 14:22:44
    重点:
    1、获取时间,星期几处理
    2、时间要时刻变化,和系统时间相同——setTimeout('showTime()',500)定时调用
    3、秒数和分数时刻保证是两位数——补位处理

    window.onload = function(){
        showTime();
      }
      function checkTime(i){  //补位处理
          if(i<10){
              i="0"+i;
          }
       return i;
      }
      function showTime(){
        var now=new Date();
        var year=now.getFullYear();
        var month=  now.getMonth()+1 ;
        var day=  now.getDate()  ;
        var h=now.getHours()  ;
        var m=now.getMinutes()  ;
        var s=now.getSeconds()  ;
        m=checkTime(m)
        s=checkTime(s)
    
        var weekday=new Array(7)
        weekday[0]="星期日"
        weekday[1]="星期一"
        weekday[2]="星期二"
        weekday[3]="星期三"
        weekday[4]="星期四"
        weekday[5]="星期五"
        weekday[6]="星期六"
        var d=now.getDay();
        document.getElementById("show").innerHTML=""+year+"年"+month+"月"+day+"日 "+ weekday[d]+" "+h+":"+m+":"+s;
        setTimeout('showTime()',500)// 定时500毫秒执行一次showTime()
      }
    

    三、高考倒计时

    倒计时原理:当前时间-倒计时截止日
    中间转换点:
    1、使用getTime()获取到毫秒数
    毫秒数差 = 当前时间getTime()获取到毫秒数-倒计时截止日getTime()获取到毫秒数
    2、天数 = 毫秒数之差/每天毫秒数
    1000 * 60 * 60 * 24一天的秒数
    3、天数不是整数,使用Math.ceil()向上取整函数
    Math.ceil(12.3) = 13;

    <script language="javascript" type="text/javascript">     
      window.onload = function(){
          var timedate= new Date(2017,6,1);     //自定义结束时间  '
          var now =  new Date();   
          var date = timedate.getTime() - now.getTime();    //得出的为毫秒
          var time = Math.ceil((date)/(1000 * 60 * 60 * 24)); //1000 * 60 * 60 * 24一天的秒数
          if(time > 0 ){
            document.getElementById('timeShow').innerHTML = time;
          }
      }
    </script>
    </head>
    <body>
     <div class="content2">
        <div class="txtshow">距离设置时间还有<span  id="timeShow"></span>天</div>
     </div>
    </body>
    
    倒计时效果

    四、倒计时二

    1、使用了parseInt()函数取整数
    2、使用% 计算时间
    3、时间结束,更改界面。并停止定时器

    function FreshTime()
    {
        var endtime=new Date("2017/5/15,12:20:12");//结束时间
        var nowtime = new Date();//当前时间
        var lefttime= parseInt((endtime.getTime()-nowtime.getTime())/1000); 
        d=parseInt(lefttime/3600/24); ;
        h= parseInt(lefttime/(60*60))%24 ;
        m= parseInt(lefttime/(60))%60 ;
        s= parseInt(lefttime%60);
       
        document.getElementById("LeftTime").innerHTML=d+"天"+h+"小时"+m+"分"+s+"秒";
       
        if(lefttime <0){
        document.getElementById("LeftTime").innerHTML="团购已结束";
        clearInterval(sh);
        }
    }
    FreshTime()
    var sh;
    sh=setInterval(FreshTime,1000);
    </script>
    
    倒计时

    }
    FreshTime();
    var sh;
    sh=setInterval(FreshTime,1000);

    </script>

    相关文章

      网友评论

          本文标题:Web前端——倒计时效果

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