HTML5API之全屏

基本属性

HTML5规范允许用户自定义网页上任一元素全屏显示

requestFullScreen(); //开启全屏显示
cancleFullScreen();  //关闭全屏显示

但是由于浏览器的实现与兼容性的问题, 目前需要这样来使用它们

element.webkitRequestFullScreen()
element.mozRequestFullScreen()

上述代码会将 element 元素全屏, 即非element元素会被隐藏 规范允许所有元素可以取消全屏,但实际测试结果 关闭全屏 只能添加到 document 元素上, 使用其他元素会报错

 document.webkitCancelFullScreen()
 document.mozCancelFullScreen()

全屏检查

可以通过下面代码检测当前是否处于全屏状态

document.fullScreen;

不同浏览器仍然需要添加前缀

document.webkitIsFullScreen;
document.mozFullScreen;

全屏伪类

还有一个全屏伪类, 可以设置全屏状态下的样式

:full-screen 
:-webkit-full-screen
:moz-full-screen 

目前标准写法仍未被实现,使用标准方法会报错(至少在pc端是这样)

chrome下测试代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>全屏</title>
    <style>
        .box {
            width: 200px;
            height: 200px;
            background: blue;
        }

        :-webkit-full-screen .box {
            background-color: red;
            width: 300px;
            height: 300px;
        }
        .cl{
            width: 100px;
            height: 100px;
            background-color: gold;
        }
    </style>
</head>
<body>
    <div class="box"></div>
    <div class="cl"></div>
    <input type="button" class='open' value="全屏">
    <input type="button" class='cancle' value="关闭全屏">
    <script>
        var open = document.querySelector('.open');
        var cancle = document.querySelector('.cancle');
        var box = document.querySelector('.box');

        open.onclick = function () {
            document.documentElement.webkitRequestFullScreen();
            // box.webkitRequestFullScreen();
            alert(document.webkitIsFullScreen);
        }

        cancle.onclick = function () {
            alert(document.webkitIsFullScreen);
            document.webkitCancelFullScreen();
            // document.documentElement.webkitCancelFullScreen();
        }
    </script>
</body>
</html>

个人博客

转载于:https://my.oschina.net/heartwalker/blog/678252

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值