我正在编写一个内部业务应用程序,并且我有一个要求来跟踪用户在特定任务上花费的时间。用户正在填写表单,但他可以访问其他页面/文档以获取所需的信息。 简单的方法是如果用户在5分钟内没有与页面进行交互,则假定用户为AFK。但是 - 它会有5分钟的不准确性,它会忽略短于5分钟的分钟等。如果他们花费30分钟阅读一些大型文档,它将会彻底崩溃。从浏览器检测用户是AFK
更好的方法是以某种方式检测到用户不移动他的鼠标/不使用键盘 - 完全不仅仅在这个特定的浏览器窗口中。 是否有可能以合理的方式实现?用户没有安装Flash或Java(闪光灯可以使用吗?)。 我需要支持IE8和Chrome。
只需将事件绑定到常用鼠标/键盘事件的文档/正文即可。如果在一段时间内没有任何事情发生,他们可以被视为AFK。所以这意味着查看'setTimeout' – Ian