我想創建,如果我點擊一個DIV1其中一個javascript函數,我需要load_data1()函數來刷新每5秒。如果用戶點擊div2或div3,我需要load_data1()函數來停止。作爲下面的代碼,當我點擊div1時,load_data1()函數在5秒後運行並停止,之後它不會運行,有什麼想法可能會在這裏丟失?你怎麼跑每5秒在JavaScript
$(document).ready(function(){
$.ajaxSetup({ cache: false });
var timeout;
function timeout_init() {
timeout=setTimeout('load_data1()', 5000);
return timeout;
}
$("#div1").click(function() {
timeout_init();
});
$("#div2").click(function() {
clearTimeout(timeout);
load_data2();
});
$("#div3").click(function() {
clearTimeout(timeout);
load_data3();
});
});
查看差異b/w setInterval和setTimeout。也請避免使用這些字符串表達式,而是使用函數引用。 – PSL
爲了將來的參考,爲了善良,請*谷歌第一。一個簡單的搜索,「如何在JavaScript中每5秒運行一次函數」將解決您的問題。 –
如果你只是簡單地搜索你的標題,你的答案應該是在第一個結果... – Sumurai8