如何判断网页有没有被用户浏览?-visibilitychange

  • 1.如何判断H5页面有没有被用户浏览?
  • 2.当用户没有浏览页面我们需要做一些操作,例如背景音乐暂停,定时器清空,电影暂停等等一系列操作
  • 3.我们怎么知道网页有没有被浏览呢?或者网页有没有没有进入最小化呢?
    接下来给大家介绍HTML5新增的API, visibilitychange, document.hidden, document.visibilityState

1.visibilitychange事件用于监听网页发生变化(进入后台,进入前台)

  • 1.浏览器支持 visibilitychange 是HTML5的API所以支持持最新浏览器 Chrome, Firefox, IE10+
  • 2.使用, 用addEventListener添加事件,当页面发生改变就会调用这个函数
document.addEventListener('visibilitychange', function () {
});

ps: 老版本浏览器如果失效需要添加前缀

  • mozvisibilitychange 火狐
  • msvisibilitychange IE
  • webkitvisibilitychange 谷歌,Safari

2.document.hidden

  • false-当前网页正在被用户浏览
  • ture-当前网页进入后台

3.document.visibilityState

  • visible 页面为浏览器当前激活,窗口不是最小化状态
  • hidden 页面不是当前激活,或者窗口最小化了
  • prerender 页面在重新生成,对用户不可见

4.判断网页进入前台还是后台

document.addEventListener('visibilitychange', function () {
        console.log(document.hidden);
        console.log("visibilityState " + document.visibilityState);
        if (document.hidden) {
            // 进入后台不被用户浏览
            document.title = '页面进入后台';
        } else if (document.hidden == false) {
            // 进入前台,用户正在浏览
            document.title = '页面正在浏览';
        }
 });

持续更新使用的干货,关注军哥给你惊喜
微博coderYJ
简书coderYJ
微信公众号coderYJ

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 14,687评论 1 92
  • <a name='html'>HTML</a> Doctype作用?标准模式与兼容模式各有什么区别? (1)、<...
    clark124阅读 8,958评论 1 19
  • 前端开发面试知识点大纲: HTML&CSS: 对Web标准的理解、浏览器内核差异、兼容性、hack、CSS基本功:...
    秀才JaneBook阅读 7,466评论 0 25
  • 看多了太多的“夫妻本是同林鸟,大难临头各自飞”的故事,总觉得现代人的感情脆弱的不堪一击,王先森说少看点电视剧,因为...
    苏素的异想时空阅读 7,075评论 0 6
  • 栋栋晓阅读 1,664评论 0 0