停止と開始の方法を教えてくださいsetInterval
。
があるとしtextarea
ます。setInterval
フォーカスで停止しsetInterval
、ぼかしで再開したい(jQuery を使用)。
停止と開始の方法を教えてくださいsetInterval
。
があるとしtextarea
ます。setInterval
フォーカスで停止しsetInterval
、ぼかしで再開したい(jQuery を使用)。
開始時にインターバルのタイマー IDを保存する必要があります。後でこの値を使用して、次のclearInterval
関数を使用して停止します。
$(function () {
var timerId = 0;
$('textarea').focus(function () {
timerId = setInterval(function () {
// interval function body
}, 1000);
});
$('textarea').blur(function () {
clearInterval(timerId);
});
});
これはCMSの回答に基づいています。質問では、タイマーをぼかしで再起動し、フォーカスで停止するように求めていたので、少し動かしました。
$(function () {
var timerId = 0;
$('textarea').focus(function () {
clearInterval(timerId);
});
$('textarea').blur(function () {
timerId = setInterval(function () {
//some code here
}, 1000);
});
});
の戻り値を変数に格納し、setInterval
後でそれを使用して間隔をクリアします。
var timer = null;
$("textarea").blur(function(){
timer = window.setInterval(function(){ ... whatever ... }, 2000);
}).focus(function(){
if(timer){
window.clearInterval(timer);
timer = null
}
});
setInterval は、clearInterval() で間隔をキャンセルするために使用できる ID を返します。