倒计时函数

  • 加载页面的时候要先判断一下结束时间是不是大于当前时间,不判断会导致多加一天的时间,不大于的情况下继续获取时间,用时间函数来做一秒一秒的显示,重要的是再最后天时分秒都是空的时候一定要清除时间函数。
var days;var hours;var mins;var secsvar endTime;var day = '';var enter='';var dayss='';//天var hourss='';//时var minss=''//分var secss='';//秒

strs = ge_time_format(data.endTime)//结束时间

str = strs.replace(/-/g, "/");用正则转换成时间格式

endTime = new Date(str);//进行匹配

var t;

var nowTime = new Date();//现在的时间

if(nowTime>endTime){ //先判断 大于处理的事情

}else{

//不大于情况下处理的事情

function getTime() {

var nowTime = new Date();//现在的时间 在外面获取了当前的时间在函数里面需要在重新获取一次,不去获取就会只显示一次时间。

var totalSecs = (endTime.getTime() - nowTime.getTime()) / 1000; //1天=24小时 1小时=60分 1分=60s 1s=1000ms  结束时间-当前时间

days = Math.floor(totalSecs / 3600 / 24);//获取天数

hours = Math.floor((totalSecs - days * 24 * 3600) / 3600);//小时

mins = Math.floor((totalSecs - days * 24 * 3600 - hours * 3600) / 60);分

secs=Math.floor((totalSecs-days*24*3600-hours*3600-mins*60));秒

if(days<=0){

dayss= '';

}else{

dayss='' + days + '天';

}

if(hours<=0){

hourss = '';

}else{

hourss='' + hours + '小时';

}

if(mins<=0){ minss = '';

}else{

minss='' + mins + '分'

}

if(secs<=0){ secss='';

}else{

secss='' + secs+ '秒'

}

//如果是天时分秒都是空的时候一定要清除时间函数 clearInterval(t);  不然会加一天的时间。
 t=setInterval(getTime, 1000);

你可能感兴趣的:(倒计时函数)