页面隐藏的黑科技-visibilitychange

本文介绍了一个使用visibilitychange事件监测页面是否处于活动状态的示例。通过JavaScript代码,该示例可以检测用户是否正在查看当前页面,并据此改变页面标题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

**<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>用 visibilitychange 事件判断页面可见性 DEMO页面</title>
</head>
<body>
<h1>用 visibilitychange 事件判断页面可见性 DEMO页面</h1>
<a href="http://www.css88.com/archives/6103">返回文章页面</a>
<p>打开页面后,切换浏览器标签页,观察这个页面的标题。</p>
<p>下面还有个广告:</p>
<div class="bd-guanggao" style="padding: 0px 0px 10px; width: 960px; margin: 20px 0">

    <script type="text/javascript">
        /*tool大-顶部*/
        var cpro_id = "u1542382";
    </script>
    <script src="http://cpro.baidustatic.com/cpro/ui/c.js" type="text/javascript"></script>

</div>
<script>
    function getHiddenProp() {
        var prefixes = ['webkit', 'moz', 'ms', 'o'];

        // if 'hidden' is natively supported just return it
        if ('hidden' in document) return 'hidden';

        // otherwise loop over all the known prefixes until we find one
        for (var i = 0; i < prefixes.length; i++) {
            if ((prefixes[i] + 'Hidden') in document)
                return prefixes[i] + 'Hidden';
        }

        // otherwise it's not supported
        return null;
    }
function getVisibilityState() {
    var prefixes = ['webkit', 'moz', 'ms', 'o'];
    if ('visibilityState' in document) return 'visibilityState';
    for (var i = 0; i < prefixes.length; i++) {
        if ((prefixes[i] + 'VisibilityState') in document)
            return prefixes[i] + 'VisibilityState';
    }
    // otherwise it's not supported
    return null;
}

    function isHidden() {
        var prop = getHiddenProp();
        if (!prop) return false;

        return document[prop];
    }

// use the property name to generate the prefixed event name
var visProp = getHiddenProp();
if (visProp) {
    var evtname = visProp.replace(/[H|h]idden/, '') + 'visibilitychange';
    document.addEventListener(evtname, function () {
        document.title = document[getVisibilityState()]+"状态";
    },false);
}

    // Set the initial value
    document.title = document[getVisibilityState()]+"状态";
</script>
</body>
</html>**
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值