Logo

切换浏览器tab刷新实现

photo

2022年01月24日

标签: js


缘起

最近在做一个活动需求,需求交互有跨项目,跳转到另一个项目里完成指定任务,再回来领取相应任务奖励,产品十分反感要求用户主动刷新浏览器才更新活动页的任务信息。

解决方案

  • 方案1:如果项目不考虑ie10以下浏览器,可以通过html5新增的Page Visibility API来实现,示例代码如下:
document.addEventListener('visibilitychange', function() { 
  var isHidden = document.hidden; 
  if (!isHidden) { 
    // 做数据更新操作,重新发起请求或者直接刷新当前页面
  } 
});
  • 方案2:如果对兼容性有一定要求,则可以考虑换用当前窗口获得焦点js事件,示例代码如下:
//当前窗口得到焦点 
window.onfocus = function() { 
  // 做数据更新操作,重新发起请求或者直接刷新当前页面 
}; 
  • 方案3:做数据轮询请求,每隔几秒做一次数据更新。

  • 方案4:可以和产品商量是否可以在想做切换刷新的区域放上一个刷新按钮,点击更新当前区域数据。

最终选择

产品要求兼容IE8+,方式1放弃了,我又不想做轮询刷新,增加服务器的压力,方式3也放弃了,跟产品协商增加一个局部刷新按钮,产品嫌弃丑,于是最终选择方案2

橙子主题打折出售

其实我不卖,主要是这里是放广告的,所以就放了一个
毕竟主题都没做完,卖了也是坑.

购买它
所有附件
该文章没有附件.
本文为原创文章,请注意保留出处!
Python contains 2022年01月21日

一、__contains__  判断字符串中是否包含相应的字符。浏览量:1,443

热门文章

Sql Server 部署SSIS包完成远程数据传输 本篇介绍如何使用SSIS和作业完成自动更新目标数据任务。**温馨提示:如需转载本文,请注明...SqlServer部署SSIS包完成远程数据传输 作者:Pastore Antonio
1644 浏览量
EWS(Exchange Service)基本使用(获取个人会议,会议室会议内容,会议室列表,发送会议,修改会议,删除会议) 最近公司要求和exchange服务对接,所以稍微研究了一下官方文档,做出以下总结,欢迎大家补充。先...EWS(ExchangeService)基本使用(获取个人会议,会议室会议内容,会议室列表,发送会议,修改会议,删除会议) 作者:Pastore Antonio
1634 浏览量
SQL Server AG集群启动不起来的临时自救大招 背景前晚一朋友遇到AG集群发生来回切换不稳定的情况,情急之下,朋友在命令行使用命令重启WSFC集群...SQLServerAG集群启动不起来的临时自救大招 作者:Pastore Antonio
1622 浏览量
SharePoint2010升级到SharePoint2013操作手册 SharePoint2010升级到SharePoint2013操作手册目录第一章...SharePoint2010升级到SharePoint2013操作手册 作者:Pastore Antonio
1622 浏览量
C# DataTable 某一列求和 列为数字类型doubletotal=Convert.ToDouble(datatable.Com...C#DataTable某一列求和 作者:Pastore Antonio
1612 浏览量