我正在用Javascript创建一个应用程序。应用程序应在用户完成特定操作后一小时运行一个函数。我可以使用什么来创建这些计划任务来运行该功能?
用例说明:用户点击其状态为“活动”,一小时后状态应自动更改为“非活动”。
答案 0 :(得分:1)
您可以使用setTimeout()
:
var timer = setTimeout(function() {
// Task
}, 60 * 60 * 1000);
并clearTimeout()
在其他情况下停止超时:
clearTimeout(timer);
答案 1 :(得分:0)
当状态设置为活动时,向服务器发送消息并记录时间。然后有一个重复的函数,如下面的那个经常运行,以检查时间是否已过期。
function checkStatus( ) {
function check( ) {
//Check with server. Should I set status to inactive
var timer = setTimeout(check, 60 * 1000);
}
check();
}
如果用户关闭浏览器并重新打开它,那么如果服务器上的时间尚未到期,您可以将状态设置为活动状态并继续运行该功能。