Javascript 任何用户活动(如onkeyup、鼠标移动等)上的倒计时计时器重置
本规范的性质类似于: 然而,我在这里试图完成的是在文档上的任何用户活动时重置这个10秒计时器。对于我的测试,我目前正在使用keyup,但我还需要将鼠标移动到文档中的任何元素上,以实现这一点,等等 下面是代码,请参阅注释代码以了解我将要做的潜在更改,我对它们进行了注释,因为我发现它们实际上不起作用:Javascript 任何用户活动(如onkeyup、鼠标移动等)上的倒计时计时器重置,javascript,jquery,timer,mouseevent,onkeydown,Javascript,Jquery,Timer,Mouseevent,Onkeydown,本规范的性质类似于: 然而,我在这里试图完成的是在文档上的任何用户活动时重置这个10秒计时器。对于我的测试,我目前正在使用keyup,但我还需要将鼠标移动到文档中的任何元素上,以实现这一点,等等 下面是代码,请参阅注释代码以了解我将要做的潜在更改,我对它们进行了注释,因为我发现它们实际上不起作用: $(function(){ //var keyed = false; function myFunction() { window.location.href="/backoffice/lo
$(function(){
//var keyed = false;
function myFunction() {
window.location.href="/backoffice/logout.jsp?forceClose=true";
}
(function() {
//Just under 15 min in milliseconds
//var time = 895000,
var time = 10000,
delta = 100,
tid;
tid = setInterval(function() {
if ( window.blurred ) { return; }
time -= delta;
//if ( keyed ) {
// time = 10000;
//}
//keyed = false;
if ( time <= 0 ) {
clearInterval(tid);
myFunction(); // time passed - do your work
}
}, delta);
})();
//window.onkeyup = function() { keyed = true; };
window.onblur = function() { window.blurred = true; };
window.onfocus = function() { window.blurred = false; };
});
$(函数(){
//var键控=假;
函数myFunction(){
window.location.href=“/backoffice/logout.jsp?forceClose=true”;
}
(功能(){
//以毫秒计不到15分钟
//var时间=895000,
var时间=10000,
δ=100,
工业贸易署;
tid=setInterval(函数(){
如果(window.fuzzle){return;}
时间-=增量;
//如果(键入){
//时间=10000;
//}
//键控=假;
如果(time您可以在任何操作上重新启动计时器,如下所示:
var tid = null;
function startTimeout() {
tid = setTimeout( // your code);
}
window.onkeyup = function() {
tid && clearTimeout(tid);
tid = startTimeout();
}
使用setTimeout而不是setInterval时,必须记住在再次完成后重新启动计时器:
function startTimeout() {
tid = setTimeout(function(){
// some code
// start timer again!
startTimeout();
}, 10000);
}
您可以在任何操作上重新启动计时器,如下所示:
var tid = null;
function startTimeout() {
tid = setTimeout( // your code);
}
window.onkeyup = function() {
tid && clearTimeout(tid);
tid = startTimeout();
}
使用setTimeout而不是setInterval时,必须记住在再次完成后重新启动计时器:
function startTimeout() {
tid = setTimeout(function(){
// some code
// start timer again!
startTimeout();
}, 10000);
}
函数myFunction(){
//window.location.href=“/backoffice/logout.jsp?forceClose=true”;
警报(“你好世界”);
}
函数侦听器(){
window.time=10000,
δ=100,
window.tid=setInterval(函数(){
window.time-=delta;
console.log(window.time);
如果(时间<代码>函数myFunction(){
//window.location.href=“/backoffice/logout.jsp?forceClose=true”;
警报(“你好世界”);
}
函数侦听器(){
window.time=10000,
δ=100,
window.tid=setInterval(函数(){
window.time-=delta;
console.log(window.time);
if(时间解释:1)将setInterval包装在侦听器函数中2)在文档准备就绪时调用该函数3)侦听文档上的事件4)清除间隔,然后调用listenr againalso链接到jQuery:http//ajax.googleapis.com/ajax/libs/jQuery/1.7.2/jQuery.min.jsI仍在测试两个提供的解决方案,但可能听起来像个新手(我想我是这样)例如,将时间变量更改为window.time的原因是什么?没有理由,您可以忽略window.time(错误)解释:1)在侦听器函数中包装setInterval 2)在文档准备就绪时调用函数3)侦听文档上的事件4)清除间隔,然后调用listenr againalso链接到jQuery:http//ajax.googleapis.com/ajax/libs/jQuery/1.7.2/jQuery.min.jsI仍在测试两个提供的解决方案,但可能听起来像个新手(我想我是这样)例如,将时间变量更改为window.time的原因是什么?没有理由,您可以忽略window.time(错误)