js,css控制元素全屏展示

5 篇文章 0 订阅

控制全屏展示的方法

Element.requestFullscreen() 方法用于发出异步请求使元素进入全屏模式。

注意:这个方法只能在用户交互或者设备方向改变的时候调用,否则将会失败。

此方法存在在不同浏览器中存在兼容性问题,需要加对应浏览器内核的前缀以webkit为例:

webkit: element.webkitRequestFullscreen()

取消全屏展示的方法

documnet.exitFullscreen()用于让当前文档退出全屏模式
此方法需要特定的前缀才能在不同的浏览器中使用,以webkit为例:

document.webkitExitFullscreen()

全屏展示相关的选择器

:fullscreen选择器选取处于全屏模式的元素

判断当前屏幕是否处于全屏的属性document.isFullScreen

同样也存在兼容性,需要加特定的前缀,例如

webkit: document.webkitIsFullscreen 值的类型为Boolean

该选择器也存在兼容性:

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

实例如下:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .box {
            width: 500px;
            height: 500px;
            font-size: 20px;
            font-weight: 900;
            color: pink;
        }

        img {
            width: 200px;
            height: 200px;
        }
        /*
        :fullscreen选择器用于选取处于全屏模式的元素
        */
        .box:fullscreen{
            background-image: url(./img/1.jpeg);
        }
    </style>
</head>

<body>
    <div class="box">
        你好
        <img src="../img/1.jpeg" alt="">
        <button id="show">全屏展示</button>
        <button id="cancel">取消全屏</button>
    </div>
    <script>
        /*
        Element.requestFullscreen() 用于发出异步请求使元素进入全屏模式
        这个方法只能在用户交互或者设备方向改变的时候调用
        */
        let box = document.querySelector('.box'),
            showBtn = document.querySelector('#show'),
            cancelBtn = document.querySelector('#cancel')
        function showFullScreen() {
            if (box.requestFullscreen) {
                console.log('common')
                box.requestFullscreen()
            }
            if (box.webkitRequestFullscreen) {
                console.log(' webkit')
                box.webkitRequestFullscreen(() => {
                    console.log('success')
                }, () => {
                    console.log('error')
                })
            }
        }
        function cancelFullScreen() {
            if (document.exitFullscreen) {
                console.log('cancel common')
                document.exitFullscreen()
            }
        }
        showBtn.addEventListener('click', showFullScreen)
        cancelBtn.addEventListener('click', cancelFullScreen)
    </script>
</body>

</html>

全屏实例截图1(未设置 .box:fullscreen)
![在这里插入图片描述](https://img-blog.csdnimg.cn/ab3a889098034698b5eafda789f83a30.png

全屏实例截图2 (设置 .box:fullscreen)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值