首页 > 编程 > JavaScript > 正文

javascript 判断用户有没有操作页面

2019-11-19 15:09:12
字体:
来源:转载
供稿:网友

javascript 判断用户有没有操作页面

用js判断用户有没有操作页面,我们所要做的就是整理我们的思路。

一、思路

用户有没有操作界面,我们可以从页面在规定时间内有没有触发事件去考虑。比如用户有没有点击,有没有按键,有没有滚动鼠标滚轴。用户有没有移动鼠标等等。如果用户没有进行这些操作,那么我们可以大概的认为用户没有操作页面。我们可以给一个定时器。来记录在规定时间内用户有没有触发这些事件。我直接贴代码,代码的具体含义,我就不再讲解,思路大概就是这样。

二、代码演示

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>js判断用户有没有操作页面</title></head><body><script> window.onload = function (){   (function($){     funObj = {       timeUserFun:'timeUserFun',     }     $[funObj.timeUserFun] = function(time){       var time = time || 2;       var userTime = time*60;       var objTime = {         init:0,         time:function(){           objTime.init += 1;           if(objTime.init == userTime){             console.log(111) // 用户到达未操作事件 做一些处理           }         },         eventFun:function(){           clearInterval(testUser);           objTime.init = 0;           testUser = setInterval(objTime.time,1000);         }       }       var testUser = setInterval(objTime.time,1000);       var body = document.querySelector('html');       body.addEventListener("click",objTime.eventFun);       body.addEventListener("keydown",objTime.eventFun);       body.addEventListener("mousemove",objTime.eventFun);       body.addEventListener("mousewheel",objTime.eventFun);     }   })(window)//   直接调用 参数代表分钟数,可以有一位小数;    timeUserFun(0.1); }</script></body></html><!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>js判断用户有没有操作页面</title></head><body><script> window.onload = function (){   (function($){     funObj = {       timeUserFun:'timeUserFun',     }     $[funObj.timeUserFun] = function(time){       var time = time || 2;       var userTime = time*60;       var objTime = {         init:0,         time:function(){           objTime.init += 1;           if(objTime.init == userTime){             console.log(111) // 用户到达未操作事件 做一些处理           }         },         eventFun:function(){           clearInterval(testUser);           objTime.init = 0;           testUser = setInterval(objTime.time,1000);         }       }       var testUser = setInterval(objTime.time,1000);       var body = document.querySelector('html');       body.addEventListener("click",objTime.eventFun);       body.addEventListener("keydown",objTime.eventFun);       body.addEventListener("mousemove",objTime.eventFun);       body.addEventListener("mousewheel",objTime.eventFun);     }   })(window)//   直接调用 参数代表分钟数,可以有一位小数;    timeUserFun(0.1); }</script></body></html>

如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表