有没有办法检测用户是否真的远离计算机

Is there a way to detect if the user is actually away from computer

本文关键字:真的 远离 计算机 是否 用户 检测 有没有      更新时间:2023-09-26

我想检测用户是否离开计算机(即不进行任何鼠标移动或键入任何内容)。

我想用JavaScript来做到这一点。

这可能吗?

在我的页面上,如果用户不在,我想触发一段 JavaScript 代码。

我知道有模糊,焦点事件,但它们取决于选项卡可见性。我不想要那种依赖。无论打开或关闭选项卡,我都想检测页面上的鼠标移动/键盘不活动。

还有很多很棒的工具来检测浏览器的活动。以下是一些:

https://github.com/arthurakay/ExtJS-Activity-Monitor

https://github.com/kidh0/jquery.idle

根据最后一个,你只需要jQuery和下面的代码:

$(document).idle({
  onIdle: function(){
    alert('Since you waited so long, the answer to the Ultimate Question of Life, the Universe, and Everything is 42');
  },
  idle: 10000
})

您还可以使用事件并将其附加到 body 标签,并使用本机 js 捕获所有事件。(这只是一个想法)。

程序可能是解决这个问题的更好方法。

用户可能在其计算机上,但正在与其计算机上的另一个程序进行交互,而您的 Web 应用程序甚至不知道,因为他们的鼠标、键盘等不会与浏览器窗互。这就是 Web 应用程序超时的原因。

通常,判断用户是否离开计算机的最佳方法是通过 JavaScript 设置不活动的超时。

例如:

setTimeout(function(){ alert("Hello"); }, 3000);