1. 需求是一个倒计时,插件使用的是$.leftTime 插件 做的倒计时功能, 其中相差的毫秒数是自己计算的。 但是在倒计时反复调用过程中会出现跳秒的情况,刚开始的时候是出现跳两秒,后面越来越多,
做这个没用过插件,你的整体思路是对就是在调用插件哪里你可以用原生计时器setTimeout来实现,自行百度很简单,
在反复带调用的时候看业务需求,你写的好像是重新执行,是的话就判断计时器是否存在存在就销毁重新创建没有存在就创建
var oSpan = document.getElementById('clock');
function tow(n) {
return n >= 0 && n < 10 ? '0' + n : '' + n;
}
function getDate() {
var oDate = new Date();//获取日期对象
var oldTime = oDate.getTime();//现在距离1970年的毫秒数
var newDate = new Date('2019/6/11 10:00:00');
var newTime = newDate.getTime();//2019年距离1970年的毫秒数
var second = Math.floor((newTime - oldTime) / 1000);//未来时间距离现在的秒数
var day = Math.floor(second / 86400);//整数部分代表的是天;一天有24*60*60=86400秒 ;
second = second % 86400;//余数代表剩下的秒数;
var hour = Math.floor(second / 3600);//整数部分代表小时;
second %= 3600; //余数代表 剩下的秒数;
var minute = Math.floor(second / 60);
second %= 60;
var str = " <strong>" + tow(day) + "</strong>天<strong>" + tow(hour) + "</strong>时<strong>" + tow(minute) + "</strong>分<strong>" + tow(second) + "</strong>秒"
oSpan.innerHTML = str;
}
$(document).ready(function () {
getDate();
setInterval(getDate, 1000);
})
应该少些个销毁计时器