倒计时
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)