页面可见性改变事件:visibilitychange

页面可见性改变事件:visibilitychange1、PC浏览器上(以谷歌浏览器为例)刷新H5页面,会触发该事件,由于刷新导致该页面消失时,会检测到document.visibilityState===‘hidden’切换页面(包括切换离开和切换回来),导致页面暂时不处于激活状态时,会触发该事件。切换离开时document.visibilityState===‘hidden’,切换回该页面时,document.visibilityS…

大家好,又见面了,我是你们的朋友全栈君。

1、PC浏览器上(以谷歌浏览器为例)

  • 刷新H5页面,会触发该事件,由于刷新导致该页面消失时,会检测到document.visibilityState === ‘hidden’
  • 切换页面(包括切换离开和切换回来),导致页面暂时不处于激活状态时,会触发该事件。切换离开时document.visibilityState === ‘hidden’,切换回该页面时,document.visibilityState === ‘visible’
  • 关闭页面窗口时,会触发该事件。关闭窗口时,document.visibilityState === ‘hidden’
  • 关闭整个浏览器时,会触发该事件。关闭整个浏览器时,document.visibilityState === ‘hidden’

说明:当页面的document.visibilityState === ‘hidden’时,是可以发送请求的

2、安卓设备上(实验于手机的微信、UC浏览器软件中)

  • 刷新H5页面,会触发该事件,由于刷新导致该页面消失时,会检测到document.visibilityState === ‘hidden’
  • 点击页面上方的 x 按钮(或是其他关闭按钮),导致页面关闭时,会触发该事件。并在关闭时,document.visibilityState === ‘hidden’
  • 切换页面(包括切换离开和切换回来),导致页面暂时不处于激活状态时,会触发该事件。切换离开时document.visibilityState === ‘hidden’,切换回该页面时,document.visibilityState === ‘visible’
  • 将页面或页面所在程序软件切换到后台,或从后台切换到前台时,会触发该事件。切换到后台时,document.visibilityState === ‘hidden’;切换到前台时,document.visibilityState === ‘visible’
  • 手势滑动关闭页面或页面所在程序软件时,document.visibilityState === ‘hidden’

说明:当页面的document.visibilityState === ‘hidden’时,是可以发送请求的

3、IOS设备上(实验于手机的微信、UC浏览器软件中)

  • 刷新H5页面,会触发该事件,由于刷新导致该页面消失时,会检测到document.visibilityState === ‘hidden’
  • 点击页面上方的 x 按钮(或是其他关闭按钮),导致页面关闭时,会触发该事件。并在关闭时,document.visibilityState === ‘hidden’
  • 切换页面(包括切换离开和切换回来),导致页面暂时不处于激活状态时,会触发该事件。切换离开时document.visibilityState === ‘hidden’,切换回该页面时,document.visibilityState === ‘visible’
  • 将页面或页面所在程序软件切换到后台,或从后台切换到前台时,会触发该事件。切换到后台时,document.visibilityState === ‘hidden’;切换到前台时,document.visibilityState === ‘visible’
  • 手势滑动关闭页面或页面所在程序软件时,document.visibilityState === ‘hidden’

说明:当页面的document.visibilityState === ‘hidden’时,是不可以发送请求的,发送的请求会被销毁掉

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/150560.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • listView1.Items.Add()与 listView1.Items[i].SubItems.Add()区别

    listView1.Items.Add()与 listView1.Items[i].SubItems.Add()区别listView1.Items是ListViewItem的集合打开资源管理器,看看windows目录,使用Details方式,一个ListViewItem就是一行,比如目录名称,修改时间,类型,大小,这整个一条记录是一个ListViewItem而listView1.Items[i].SubItems是ListViewSubItem的集合比如刚才的目录名称或

    2022年7月26日
    5
  • Java是什么意思-给想要了解Java的朋友介绍Java

    Java是什么意思-给想要了解Java的朋友介绍Java许多人会比较好奇,Java是什么意思?或许听说过Java是一种编程语言,但也会不禁思考Java是干什么用的?今天我来给没有接触过计算机行业的同学们简单介绍一下Java。

    2022年7月7日
    27
  • jar 解压war_war包解压命令

    jar 解压war_war包解压命令文章来源:java实现可压缩或解压缩WAR文件packageutils;importjava.io.BufferedInputStream;importjava.io.BufferedOutputStream;importjava.io.File;importjava.io.FileInputStream;importjava.io.FileNotFoundException;impo…

    2022年10月5日
    1
  • UE4选不中半透明物体_半透明物体有哪些

    UE4选不中半透明物体_半透明物体有哪些UE4开发时,会出现透明材质的物体显示不全的情况本文给出几种解决方式供各位参考

    2022年10月5日
    5
  • minio节点扩展_多节点部署定时任务

    minio节点扩展_多节点部署定时任务1.概述分布式Minio可以让你将多块硬盘(甚至在不同的机器上)组成一个对象存储服务。由于硬盘分布在不同的节点上,分布式Minio避免了单点故障。在大数据领域,通常的设计理念都是无中心和分布式。Minio分布式模式可以帮助你搭建一个高可用的对象存储服务,你可以使用这些存储设备,而不用考虑其真实物理位置。数据保护分布式Minio采用纠删码来防范多个节点宕机和位衰减bitrot。分布式Minio至少需要4个硬盘,使用分布式Minio自动引入了纠删码功能。高可用单机Mi..

    2022年10月8日
    3
  • navicat premium mac 激活码【中文破解版】

    (navicat premium mac 激活码)2021最新分享一个能用的的激活码出来,希望能帮到需要激活的朋友。目前这个是能用的,但是用的人多了之后也会失效,会不定时更新的,大家持续关注此网站~IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html…

    2022年3月22日
    95

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号