我想有一个函数设置为每隔一段时间运行一次
setInterval(function, 360000);
当它被调用时,它会从 Ajax/Flask 加载一些信息,但不会刷新或重新加载页面。
如何在 div 中显示倒计时,以显示下一次触发功能/间隔之前的剩余时间?
最佳答案
与其使用非常长的计时器(在您列出的代码中为六分钟),不如使用更短的计时器,例如一秒定时器。每次计时器触发时更新您的 div,并跟踪它被调用的次数。例如:
var secondsBetweenActions = 360;
var secondsRemaining = secondsBetweenActions;
setInterval( function() {
updateStatus( secondsRemaining );
secondsRemaining--;
if( secondsRemaining <= 0 ) {
doAction();
secondsRemaining = secondsBetweenActions;
}
}, 1000 );
现在您只需要使用 jQuery 实现 updateStatus()
,它应该在您的状态 div
中显示 secondsRemaining
,以及 doAction( )
它会执行您需要执行的任何操作。
关于javascript - 带倒计时显示的 SetInterval/SetTimeout,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44350003/