如何解决页面/标签处于非活动状态时如何停止setInterval自动刷新?
| 我有一个JavaScript来解析twitter feed,并每30秒在我的页面的一个区块中显示它们,代码是这样的: var auto_refresh = setInterval( 功能() { //获取Twitter提要 }); },30000); 现在,如果用户最小化他的浏览器或切换到另一个选项卡(页面不活动),我想禁用此auto_refereshclearInterval(auto_refresh);
谢谢你的帮助
解决方法
答案是:
有没有一种方法可以检测浏览器窗口当前是否未激活?
, 您可能要签出
如何检测浏览器窗口是否聚焦?
确定网页是否具有前景窗口焦点/是否为活动选项卡?
如何判断浏览器/标签页是否处于活动状态
是否可以告诉用户我的页面最小化还是非活动选项卡?
有没有一种方法可以检测浏览器窗口当前是否未激活?
https://odondo.wordpress.com/2007/08/28/javascript-and-cross-browser-window-focus/
还要注意,Chrome显然具有一些优化,这些优化在选项卡不突出时会减慢计时器的启动时间:当选项卡在Chrome中处于非活动状态时,如何使setInterval也起作用?
, 这个答案很干净:https://stackoverflow.com/a/18677784/9027171
摘自infinito84的答案
if(!document.hasFocus()){
// The tab is not active
}
else{
// The tab is active
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。