我有这个代码用于检查用户是否在页面中处于活动状态。但是一旦将光标留在页面中,就无法使用Firefox。似乎鼠标悬停仍然触发。但完全适用于Chrome。
idleTimer = null;
idleState = false;
idleWait = 2000;
(function ($) {
$(document).ready(function () {
$('*').bind('mousemove keydown scroll', function () {
clearTimeout(idleTimer);
if (idleState == true) {
// Reactivated event
$("body").append("<p>Welcome Back.</p>");
}
idleState = false;
idleTimer = setTimeout(function () {
// Idle Event
$("body").append("<p>You've been idle for " + idleWait/1000 + " seconds.</p>");
idleState = true; }, idleWait);
});
$("body").trigger("mousemove");
});
}) (jQuery)
按照本教程链接:https://css-tricks.com/snippets/jquery/fire-event-when-user-is-idle/
请在Firefox浏览器上帮助解决此问题。 谢谢:))
答案 0 :(得分:0)
<强>解决强> 我是用Ruby on Rails做的。 我把文件放在assets / javascripts目录中。 最后通过将它添加到application.js中的必需js来解决它:
//= require js_file
并且,删除jquery文档函数很重要,因为它会在Firefox中导致相同的错误。只将主要的js代码添加到文件中,它将自动加载。:
删除重要: (function($){}); $(document).ready(function(){});
并且,在代码的底部添加如下:
$(document).ready(ready);
$(document).on("page:load", ready);
现在,Chrome和Firefox都运行良好。