Sco*_*yon 8 html javascript jquery
可能重复:
如何更改此代码,以便它只在没有鼠标移动时重定向
如果用户没有使用Javascript的活动,我想刷新网页.用户活动,如按键或鼠标单击.
fca*_*ran 13
这是一个基本的例子
(function(seconds) {
var refresh,
intvrefresh = function() {
clearInterval(refresh);
refresh = setTimeout(function() {
location.href = location.href;
}, seconds * 1000);
};
$(document).on('keypress click', function() { intvrefresh() });
intvrefresh();
}(15)); // define here seconds
Run Code Online (Sandbox Code Playgroud)
这将在没有按键或点击事件的情况下每15秒刷新一次页面(但是如果您在其他地方定义了相同的事件,那么stopPropagation()这将无法正常工作,因为事件将无法到达该元素)
创建一个setTimeout将刷新页面的计时器(),每次按键或鼠标按键,只需重新启动计时器.
查看此问题的代码可以执行您想要的大部分操作.
FWIW,这里的F.Calderan的答案改写为:
-
function setIdle(cb, seconds) {
var timer;
var interval = seconds * 1000;
function refresh() {
clearInterval(timer);
timer = setTimeout(cb, interval);
};
$(document).on('keypress click', refresh);
refresh();
}
setIdle(function() {
location.href = location.href;
}, 15);
Run Code Online (Sandbox Code Playgroud)