如何判断当前页面是不是最小化或者不可见隐藏的标签页

document.visibilityState

Document.visibilityState (只读属性), 返回document的可见性, 即当前可见元素的上下文环境. 由此可以知道当前文档(即为页面)是在背后, 或是不可见的隐藏的标签页,或者(正在)预渲染.可用的值如下:

‘visible’ : 此时页面内容至少是部分可见. 即此页面在前景标签页中,并且窗口没有最小化;.
‘hidden’ : 此时页面对用户不可见. 即文档处于背景标签页或者窗口处于最小化状态,或者操作系统正处于 ‘锁屏状态’ .;

翻译
1 / 浏览器打开多个窗口以后,不在当前窗口的时候就会是 hidden状态,回到这个窗口的时候就是 visible状态
2 / 浏览器最小化以后也会变成 hidden 的状态,再次回来的时候就变成 visible 状态
3 / 比如手机端,如果手机锁屏了变成 hidden,再次打开的时候 visible

document.addEventListener("visibilitychange", function() {
        if(document.visibilityState =='hidden'){ //说明页面被最小化或者打开的不是当前页面
            document.title = '快点回来把'
        }else if(document.visibilityState =='visible'){
            document.title = '欢迎回来';
            setTimeout(function(){
                document.title = '首页';
            },3000);
        }else{
            console.log('页面渲染中....');
        }
    });

上面代码就是实现了一个窗口不在当前页面时的 title提示。

‘prerender’ : 页面此时正在渲染中, 因此是不可见的 (considered hidden for purposes of document.hidden). 文档只能从此状态开始,永远不能从其他值变为此状态.注意: 浏览器支持是可选的.

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值