项目需要一个时间倒数效果,网上找了一下,发现全都是利用时间对象进行计算再转换的这种做法,个人感觉效率很低很不可取,只好自己用算法实现了一个:
var time = { day:6, hour:15, minute:48, second:36 }; window.interval = window.interval ? clearInterval(window.interval) : setInterval(function () { var v = ''; if(time.second == 0){ time.second = 59; time.minute -= 1; if(time.minute == 0){ time.minute = 59; time.hour -= 1; if(time.hour == 0){ time.hour = 23; time.day -= 1; }else{ time.hour -= 1; } }else{ time.minute -= 1; } }else{ time.second -= 1; } v += time.day > 0 ? (time.day + '天'): ''; v += time.hour > 0 ? (time.hour + '时'): v ? '0时' : ''; v += time.minute > 0 ? (time.minute + '分'): v ? '0分' : ''; v += time.second > 0 ? (time.second + '秒'): v ? '0秒' : ''; $('#lessTime').html(v); }, 1000);