当浏览器选项卡为后台时,setInterval无故停止

2022-04-08 00:00:00 javascript ajax setinterval

我正在开发一个应用程序,该应用程序使用setInterval通过AJAX每2分钟将当前时间戳发送到数据库。

但setInterval不知何故在几分钟后停止(我没有计算确切的时间),但我相信当我20-30分钟没有打开浏览器的标签时就会停止。

function tmstmp() {
$.post("send_functions.php?act=time");
}

$(function() { 
setInterval(tmstmp, 60000);
});

如果该选项卡不在前台,setInterval停止是否正常?

如果是,如何阻止setInterval停止?或检查它是否已停止?

谢谢


解决方案

您应该尝试在页面启动时调用函数:

test();

然后循环该函数:

function test() {
    setTimeout(function() {
        // your code
        test();
    }, 2000);
}

相关文章