我以为这很容易,但似乎不是太短就是太长。
我正试图使它在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。