在Javascript中调度任务,在每个用户执行特定操作后1小时运行

时间:2012-12-05 09:06:21

标签: javascript scheduled-tasks

我正在用Javascript创建一个应用程序。应用程序应在用户完成特定操作后一小时运行一个函数。我可以使用什么来创建这些计划任务来运行该功能?

用例说明:用户点击其状态为“活动”,一小时后状态应自动更改为“非活动”。

2 个答案:

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

如果用户关闭浏览器并重新打开它,那么如果服务器上的时间尚未到期,您可以将状态设置为活动状态并继续运行该功能。