倒计时

1.区间倒计时

function getTimer(){
     const now=new Date().getTime();
     console.log(now)
     let end=1524861679153
     let last_time=end-now;
     const px_d=1000*60*60*24;//一天的时间有多少毫秒
     const px_h=1000*60*60;//一个小时
     const px_m=1000*60;//
     const px_s=1000;//
     let d=Math.floor(last_time/px_d);
     let h=Math.floor((last_time-d*px_d)/px_h);
     let m=Math.floor((last_time-d*px_d-h*px_h)/px_m);
     let s=Math.floor((last_time-d*px_d-h*px_h-m*px_m)/px_s);
     let r=[];
     if(d>0){
        r.push(`<b>${d}</b>天`)
     }
     if(r.length||h>0){
        r.push(`<b>${h>9?h:'0'+h}</b>时`)
     }
     if(r.length||m>0){
        r.push(`<b>${m>9?m:'0'+m}</b>分`)
     }
     if(r.length||s>0){
        r.push(`<b>${s>9?s:'0'+s}</b>`)
     }
     let t=r.join('')
     console.log(t)
     document.body.innerHTML=t
}
 
 setInterval(function(){
     getTimer();
 },1000)

2.带天数的倒计时

function countDown(times){
  var timer=null;
  timer=setInterval(function(){
    var day=0,
      hour=0,
      minute=0,
      second=0;//时间默认值
    if(times > 0){
      day = Math.floor(times / (60 * 60 * 24));
      hour = Math.floor(times / (60 * 60)) - (day * 24);
      minute = Math.floor(times / 60) - (day * 24 * 60) - (hour * 60);
      second = Math.floor(times) - (day * 24 * 60 * 60) - (hour * 60 * 60) - (minute * 60);
    }
    if (day <= 9) day = '0' + day;
    if (hour <= 9) hour = '0' + hour;
    if (minute <= 9) minute = '0' + minute;
    if (second <= 9) second = '0' + second;
    //
    console.log(day+"天:"+hour+"小时:"+minute+"分钟:"+second+"秒");
    times--;
  },1000);
  if(times<=0){
    clearInterval(timer);
  }
}
 
countDown(600);

3.单纯分钟和秒倒计时

function resetTime(time){
  var timer=null;
  var t=time;
  var m=0;
  var s=0;
  m=Math.floor(t/60%60);
  m<10&&(m='0'+m);
  s=Math.floor(t%60);
  function countDown(){
   s--;
   s<10&&(s='0'+s);
   if(s.length>=3){
    s=59;
    m="0"+(Number(m)-1);
   }
   if(m.length>=3){
    m='00';
    s='00';
    clearInterval(timer);
   }
   console.log(m+"分钟"+s+"秒");
  }
  timer=setInterval(countDown,1000);
}
resetTime(600)

 

posted @ 2018-04-16 17:59  (⊙o⊙)买噶  阅读(142)  评论(0编辑  收藏  举报