jQuery,如果用户处于活动状态;重新加载div,如果用户处于非活动状态,则停止重新加载

jQuery,如果用户处于活动状态;重新加载div,如果用户处于非活动状态,则停止重新加载,jquery,load,timeout,python-idle,Jquery,Load,Timeout,Python Idle,我有下面的场景。 我的twitter提要应该每5秒刷新一次(使用load()函数)。虽然我一直在监控我的带宽,但它确实占用了很多 我的想法是,一旦用户进入非活动状态(例如,5或10秒,页面上没有交互),就停止刷新。我尝试了一些插件,但没有成功 更新如下: setInterval(function() { $("#feed").load("feed.php"); }, 5000); 它应该停止刷新,但我尝试的插件只是保持刷新(运行间隔) 有没有办法做到这一点?我尝试了以下插件: -“空闲”和“离

我有下面的场景。 我的twitter提要应该每5秒刷新一次(使用load()函数)。虽然我一直在监控我的带宽,但它确实占用了很多

我的想法是,一旦用户进入非活动状态(例如,5或10秒,页面上没有交互),就停止刷新。我尝试了一些插件,但没有成功

更新如下:

setInterval(function() { $("#feed").load("feed.php"); }, 5000);
它应该停止刷新,但我尝试的插件只是保持刷新(运行间隔)

有没有办法做到这一点?我尝试了以下插件: -“空闲”和“离开”超时 -


提前谢谢。

跟踪鼠标的位置如何? 每5秒或任何时候,查看鼠标坐标是否与上一次检查中的坐标相同。如果它们是相同的,则假定鼠标没有移动。然后不要刷新你的提要。如果它们不同,请刷新提要


只是一个想法。

最简单的方法是使用
idleTimer
jQuery插件

它的功能之一是获取自用户上次活动以来的时间量。它允许您编写以下代码

setInterval(function () { 
  if ($.idleTimer('getElapsedTime') < 5000) {
    $("#feed").load("feed.php");
  }
}, 5000);
setInterval(函数(){
如果($.idleTimer('getElapsedTime')<5000){
$(“#feed”).load(“feed.php”);
}
}, 5000);

我的解决方案是将刷新时间从5秒改为30秒左右,除非你是真正的速度阅读器。“推特:因为你的添加不够严重。”这在活动中使用。在活动期间,很多人在推特上发信息。有时每5秒超过3次。这似乎不起作用。在我进入非活动状态后,它仍然保持刷新状态。@Roel您是否确保先用一个值初始化
idleTimer
。我相信这是使用
getElapsedTime
所必需的,现在它就像一个符咒一样工作。非常感谢你!