function Timer(callback, delay) {
var timerId, start, remaining = delay;
//暂停
this.pause = function() {
window.clearTimeout(timerId);
remaining -= new Date() - start;
};
//继续
this.resume = function() {
start = new Date();
window.clearTimeout(timerId);
timerId = window.setTimeout(callback, remaining);
};
this.resume();
}
var timer = new Timer(function() {
alert("Done!");
}, 1000);
timer.pause();
// Do some stuff...
timer.resume();
先创建定时器,拿到定时器句柄,再清楚该定时器
// 创建定时器, 仅一秒后执行一次
var timer = setTimeout(function(){ console.log('something') }, 1000)
// 清除定时器
clearTimeout(timer)
// 创建定时器, 每秒执行一次
var timer = setInterval(function(){ console.log('something') }, 1000)
// 清除定时器
clearInterval(timer)
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。