如何在 JavaScript 中每 5 秒运行一次函数

how do you run a function every 5 seconds in javascript

本文关键字:函数 一次 运行 JavaScript 中每      更新时间:2023-09-26

>我正在尝试创建一个javascript,如果我单击div1,我需要load_data1()函数每5秒刷新一次。如果用户单击div2 或div3,我需要 load_data1() 函数停止。正如下面的代码一样,当我单击div1 时,load_data1() 函数在 5 秒后运行并停止,之后它不会运行,任何想法我在这里可能缺少什么?

 $(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();
    });
});

你想使用setInterval()而不是只触发一次的setTimeoutsetInterval会一直触发,直到你清除它

你可以尝试这样的事情:

window.setInterval(function(){
  /// call your function here
}, 5000);

这是一个匿名函数,每 5 秒运行一次。