我想检查用户是否有几秒钟没有使用页面??可以使用 javascript 吗?
问问题
220 次
3 回答
1
您可以安装鼠标移动事件处理程序和计时器。在鼠标移动中,您使用当前时间设置一个变量,并在计时器中检查您多久没有看到任何鼠标事件。
当然,您还应该设置一个keydown 处理程序来查看用户是否正在使用键盘。
显然,没有办法知道用户是否只是在仔细阅读页面......有时阅读仍然有资格“使用”......
于 2012-08-18T16:03:57.327 回答
0
取决于您如何定义“未使用”,但可以说当用户切换选项卡或更改浏览器时。
您可以使用 jQuery 轻松捕获此 evan。请注意,下面的代码只是想法,如果有错误,它可能无法在没有调试的情况下运行,但你可以看到我的意思
var seconds=0;
var notLooking=false;
$(window).blur(function(){
check();
});
$(window).focus(function(){
absent=false;
seconds=0;
});
function check(){
if( seconds > 10 && absent ){
alert("dude you should monitor your chat, you are absent too long!!!");
seconds=0;
absent=false;
}else{
if( absent ){
setTimeout(check, 1000);
}else{
//user is back
absent=false;
seconds=0;
}
}
}
于 2012-08-18T16:15:53.083 回答
0
您必须弄清楚“未使用”是什么意思。现代浏览器的一种常见方法是查看页面选项卡是否具有焦点。您可以使用窗口事件focus
并blur
为此。另请参阅: https ://stackoverflow.com/a/6184276/362536
于 2012-08-18T16:04:27.417 回答