Web前端——倒计时效果

2017-04-18  本文已影响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>

上一篇下一篇

猜你喜欢

热点阅读