如何停止和启动setInterval
假设我有一个textarea
。我想在聚焦时停止setInterval
,在模糊时重新启动setInterval
(使用jQuery)。
发布于 2012-07-01 00:22:41
这是基于CMS的答案。这个问题要求在模糊时重新启动计时器,并在焦点上停止计时器,所以我稍微移动了一下:
$(function () {
var timerId = 0;
$('textarea').focus(function () {
clearInterval(timerId);
});
$('textarea').blur(function () {
timerId = setInterval(function () {
//some code here
}, 1000);
});
});
发布于 2009-12-02 15:17:22
将setInterval
的返回值存储在一个变量中,稍后用它来清除间隔。
var timer = null;
$("textarea").blur(function(){
timer = window.setInterval(function(){ ... whatever ... }, 2000);
}).focus(function(){
if(timer){
window.clearInterval(timer);
timer = null
}
});
发布于 2009-12-02 15:17:58
setInterval返回一个id,您可以使用clearInterval()用它来取消间隔
https://stackoverflow.com/questions/1831152
复制相似问题