我在使用setInterval时遇到了一些问题。老实说,我不是Jquery的家伙,但我喜欢学习。
这是我想要做的。当我的网页空闲(没有鼠标或键盘使用)一分钟时,我运行一个将网页带回左侧的功能(scrollLeft)。当我回到左边时,我需要运行第二个setInterval计时器来触发一个将加载屏幕保护程序的函数。因此页面在一分钟后返回顶部,然后在顶部30秒后,加载屏幕保护程序。
唯一的问题是我需要第一个计时器才能清除。当我回到页面左侧时,第一个计时器继续运行。
这是我到目前为止的代码......
idleTime = 0;
$(document).ready(function () {
//Increment the idle time counter every minute.
var idleInterval = setInterval(timerIncrement, 60000); // 1 minute
//Zero the idle timer on mouse movement.
$(this).mousemove(function (e) {
idleTime = 0;
});
$(this).keypress(function (e) {
idleTime = 0;
});
});
function timerIncrement() {
idleTime = idleTime + 1;
if (idleTime > 2) { // 20 minutes - 30 is 2:00 minutes
$("html, body").animate({scrollLeft: 0}, 1000, saverStart);
}
}
function saverStart() {
// clear first setInterval
// screen saver timer
}
很高兴收到任何意见。