jQuery - 3分钟在秒



我以为这很容易,但似乎不是太短就是太长。

我正试图使它在3分钟后将用户签出这是我认为可行的倒数我尝试过3000,300,3*60,3*1000等等

var timeout = 30*1800;

这是我要运行的函数,

    function loadidle(){
          var timeout = 180000;
          //alert(timeout);
          $(document).bind("idle.idleTimer", function(){
              logout();
          });

          $.idleTimer(timeout);
}

您只需要一个简单的计时器。有很多品种。这里有一个非常便宜的例子,它很好地抽象为一个类。你可以通过调用。reset()来"继续"计时器。

function Timeout(seconds, callback){
    this.length = seconds * 1000;
    this.callback = callback;
    this.start();
}
Timeout.prototype = {
    start: function(){
        var self = this;
        this.stop();
        this.timer = setTimeout(function(){
            self.complete();
        },this.length);
    },
    stop: function(){
        if (this.timer) clearTimeout(this.timer);
        this.timer = null;
    },
    complete: function(){
        if (this.callback) this.callback();
        this.stop();
    },
    reset: function() {
        this.stop();
        this.start();
    }
}

启动一个新的定时器:

var timer = new Timeout(3 * 60, logout);
timer.reset(); // refresh the timer
timer.stop(); // cancel the timer

非常确定JS(因此jQuery)使用毫秒,所以您将需要3*60*1000。

相关内容

  • 没有找到相关文章

最新更新