Saya ingin menghentikan interval ini di error
pawang agar tidak berjalan berulang kali. Apakah itu mungkin, dan jika ya, bagaimana?
// example code
$(document).on('ready',function(){
setInterval(updateDiv,3000);
});
function updateDiv(){
$.ajax({
url: 'getContent.php',
success: function(data){
$('.square').html(data);
},
error: function(){
$.playSound('oneday.wav');
$('.square').html('<span style="color:red">Connection problems</span>');
// I want to stop it here
}
});
}
javascript
jquery
html
setinterval
Henrik Petterson
sumber
sumber
Jawaban:
Anda perlu menyetel nilai kembalian
setInterval
ke variabel dalam lingkup penangan klik, lalu gunakanclearInterval()
seperti ini:sumber
setTimout()
yang hanya berjalan sekaliGunakan variabel dan panggil
clearInterval
untuk menghentikannya.sumber
Anda harus menetapkan nilai yang dikembalikan dari
setInterval
fungsi ke variabellalu gunakan
clearInterval(interval)
untuk membersihkannya lagi.sumber
GUNAKAN ini, saya harap membantu Anda
sumber
kita dapat dengan mudah menghentikan interval yang ditetapkan dengan memanggil interval yang jelas
sumber
setInterval
bahwa kebocoran dapat terjadi tanpa batas waktu - tidak ada variasi terkait, untuk mengendalikannya. Kedua, Anda tidak dapat melanjutkanthis
, karenathis
bukan interval waktu. Jika Anda menggunakanTypeScript
Anda akan mendapat masalah:No overload matches this call.Overload 1 of 2, '(intervalId: Timeout): void', gave the following error: Argument of type 'this' is not assignable to parameter of type 'Timeout'.
sumber