2010-02-10 121 views
2

我希望每5分钟有一次我的网络应用程序重新加载html。我能做到这一点的方法之一是通过添加HTML标题:如何强制每五分钟强制重新加载网页仅在活动

<meta http-equiv="refresh" content="300" /> 

但是,这里有一个问题,即使有问题的网页没有被激活,它会在重装所有的时间。通过激活,我的意思是浏览器窗口在前台,页面是当前活动的选项卡。

如何使用Javascript完成此操作?任何帮助赞赏。

回答

0

您必须首先定义“主动”意味着什么。

通过任何标准衡量,活动都与网站互动,无论如何都会刷新页面。

更新感谢您的澄清。

我不认为通常可以从javascript中检测浏览器是否为活动窗口,并且该页面是当前选定的选项卡。

有可能是浏览器特定的技巧,但我不知道任何。

4

浏览器DOM无法告诉您该页面是否是浏览器中的当前活动选项卡,更不用说浏览器是当前桌面上的活动应用程序。您也许可以监视鼠标悬停事件来推断该页面有用户的注意力。

+1

+1是一个好主意。我不确定用户想要依赖鼠标事件,但我认为这可能是唯一的方法 – 2010-02-10 06:51:59

0

我认为你的方法是最好的,你可以得到。我不相信有一种方法可以在页面内检查它的窗口/选项卡是否处于活动状态。

0

您可以通过按键或鼠标活动/移动页面主体来设置'主动'标志。对于每次按下/点击/移动,重置倒数计时器(5分钟)以通过javascript刷新页面。

如果浏览器窗口位于前景或页面处于活动选项卡,则无法直接进行检测。