小程序/uniapp等项目有onshow、onhide等生命周期。

其实在h5页面中对应的是页面激活、页面非激活状态。

应用场景:

eg:在某h5页面需要连接websoket,页面激活状态建立连接,页面失去焦点就关闭连接,那么就需要用到该方式。话不多说,直接上代码~

核心代码:

function pageVisibilityChange() {var hiddenProperty = 'hidden' in document ? 'hidden' : 'webkitHidden' in document ? 'webkitHidden' : 'mozHidden' in document ? 'mozHidden' : null,visibilityChangeEvent = hiddenProperty.replace(/hidden/i, 'visibilitychange'),onVisibilityChange = function() {if (!document[hiddenProperty]) {console.log('页面激活');} else {console.log('页面非激活');}};document.addEventListener(visibilityChangeEvent, onVisibilityChange);
}

使用方式:

直接在页面调用函数pageVisibilityChange即可:

然后在页面激活、页面非激活里面写自己的业务代码。

pageVisibilityChange();

如果有帮助,可以点赞+收藏+关注,后续有更多知识与您分享!!!

欢迎加入QQ技术群:568984539,加群备注‘地区-名字-技术类型’,以防乱加。

关于本文,如果任何疑问的可以在评论区留言,我看到就会第一时间回复的。

h5页面js监听页面失去焦点、获取焦点相关推荐

  1. js监听页面或元素scroll事件,滚动到底部或顶部

    基本原理: 1.滚动到底部 元素的滚动距离 + 元素的可视距离 == 元素的滚动条总距离2.滚动到顶部 元素的滚动距离 == 0 监听页面滚动 <!DOCTYPE html> <ht ...

  2. java计算器监听放大缩小,js监听页面放大缩小

    demo body[zoom='scale']:before{ content: '您的网页处于缩放状态,请按 Ctrl+0 恢复到浏览器默认大小'; z-index: 9999; position: ...

  3. js监听页面最大化,最小化事件

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  4. js监听页面元素变化window.MutationObserver

    相信前端开发同学都熟悉各种各样的监听事件,比如元素点击事件onClick,鼠标事件onMouseDown.onMouseHover,键盘按键onKeyDown,浏览器窗口改变事件onResize等等. ...

  5. JS监听页面----无鼠标键盘动作,自动跳页

    监听页面鼠标键盘动作,若用户5秒没有任何操作,页面自动跳转 function ScreenSaver(settings){ this.settings = settings; this.nTimeou ...

  6. JS监听页面元素删除子节点、增加子节点、修改子节点的内容

    监听这个事件DOMSubtreeModified. 表示如果当前监听元素的子节点有改动:包括删除子节点.增加子节点.修改子节点的内容,都会触发这个事件. var container = documen ...

  7. js监听页面焦点事件

    document.addEventListener('visibilitychange', function () {var isHidden = document.hidden;if (isHidd ...

  8. js 监听页面url锚点变化 window.onpopstate

    window.onpopstate = function (event) {if (location.href.indexOf('#') == -1) {location.reload();}}; 解 ...

  9. html+监听+页面滚动到底部,JS监听页面滚动到底部事件

    敏捷开发之Scrum扫盲篇 现在敏捷开发是越来越火了,人人都在谈敏捷,人人都在学习Scrum和XP... 为了不落后他人,于是我也开始学习Scrum,今天主要是对我最近阅读的相关资料,根据自己的理解, ...

最新文章

  1. 梦见男朋友和别的女生逛街,第一反应亮了... | 每日趣闻
  2. CodeForces - 182D Common Divisors(KMP的next数组)
  3. IP地址不是唯一的吗?为什么路由器的IP地址都是这样的呢?
  4. python 函数递归_Python零基础之三元表达式、函数递归、匿名函数教程!超级详细!...
  5. linux shell ls -l,linux之ls -l|grep ^-|wc -l命令 Shell 中常見的日志統計方法
  6. linux time
  7. 面试中听到这句话是不是代表凉了?
  8. shll脚本带参数输入给导出的数据库文件命名以及创造路径
  9. java was datasource_mybatis默认的数据源连接池(PooledDataSource和UnPooledDataSource)
  10. 在Release版本中如何关闭Debug版本中的log
  11. 多维数组-创建多维数组
  12. 还原 idea undo commit
  13. 用glew,glfw实现的opengl 学习笔记2画一个四方形
  14. 《duilib入门到精通》- duilib下载与编译(duilib视频教程)
  15. fiddler websocket 乱码
  16. SQL调优和性能监控利器SQL Monitor
  17. 利用Oh-My-Zsh打造你的超级终端
  18. 计算机中分页符号是什么,2013年职称计算机操Word2003精选知识点:分页符号
  19. open62541 (R 1.1.2)中文文档 (译文)第一篇 (1 - 5)
  20. 百度目前开放的AI平台

热门文章

  1. python如何读pst文件_python - 从win32或pypff读取PST文件 - SO中文参考 - www.soinside.com...
  2. 在使用Repeater、DataList 或 DataGrid 的模板列表时,根据不同状态,显示不同颜色
  3. 莫比乌斯函数摘录笔记
  4. 硬件设计从0到1之基本工具
  5. 书生中学计算机应用自费,浙江省台州市书生中学2015-2016学年高二信息技术上学期期中试题...
  6. [转贴]主板报警声详解
  7. 高质量APP广告变现,广告竞价优化策略不能少
  8. 优思学院|“丰田生产方式“和“福特生产方式”的区别
  9. windows注册表修改大全
  10. vue前端下载excel文件