为了账号安全,请及时绑定邮箱和手机立即绑定

关于浏览器标签页间切换触发的事件的理解

关于浏览器标签页间切换触发的事件的理解

素胚勾勒不出你 2018-12-12 18:18:31
今天在zealer上看视频发现一个小细节,当用户切换到其他标签页时,页面的视频会暂停。于是在网上查了资料。http://blog.csdn.net/cczhumin...代码如下:var hiddenProperty = 'hidden' in document ? 'hidden' :        'webkitHidden' in document ? 'webkitHidden' :        'mozHidden' in document ? 'mozHidden' :        null;var visibilityChangeEvent = hiddenProperty.replace(/hidden/i, 'visibilitychange');var onVisibilityChange = function(){    if (!document[hiddenProperty]) {            console.log('页面非激活');    }else{        console.log('页面激活')    }}document.addEventListener(visibilityChangeEvent, onVisibilityChange);我对这段代码不是很理解,第一行大概是针对不同浏览器写的兼容吧,到了第二行就不知道为什么要把hiddenProperty替换成visibilitychange。然后就是document.hidden的含义不是很明白,求解!
查看完整描述

1 回答

?
慕森卡

TA贡献1806条经验 获得超8个赞

  1. 第一行你想的没错就是兼容。

  2. 第二行把'hideen'替换成'visibilitychange'之后还要赋值给变量var visibilityChangeEvent的,之所以要这么换是要承接第一行拿到的浏览器前缀,比如第一行如果是'webkitHidden'的话那这个就会是'webkitvisibilitychange'了。


查看完整回答
反对 回复 2019-01-05
  • 1 回答
  • 0 关注
  • 542 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信