如何实现全屏和退出全屏的效果?

简介: 代码实现

代码实现

<!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>
</head>
<body>
    <button onclick="fullscreen()">全屏</button>
    <button onclick="outfullscreen()">退出全屏</button>
    <script>
        // 全屏
        function fullscreen() {
            var element = document.getElementsByTagName("body")[0];
            console.log(element);
            var requestMethod = element.requestFullScreen || element.webkitRequestFullScreen || element.mozRequestFullScreen || element.msRequestFullScreen;
            console.log(element.requestFullScreen);
            if (requestMethod) {
                requestMethod.call(element);
            } else if (typeof window.ActiveXObject !== "undefined") {
                var wscript = new ActiveXObject("WScript.Shell");
                if (wscript !== null) {
                    wscript.SendKeys("{F11}");
                }
            }
        }
        // 退出全屏
        function outfullscreen() {
            var el = document;
            var cfs = el.cancelFullScreen || el.webkitCancelFullScreen ||
                el.mozCancelFullScreen || el.exitFullScreen;
            if (typeof cfs != "undefined" && cfs) {
                cfs.call(el);
            } else if (typeof window.ActiveXObject != "undefined") {
                var wscript = new ActiveXObject("WScript.Shell");
                if (wscript != null) {
                    wscript.SendKeys("{F11}");
                }
            }
        }
    </script>
</body>
</html>

效果

22fe31e9d4f64154b2ae3b0d73b26dbe.png

a495331645b7441e8cf1d06948dd44e0.png

相关文章
|
SQL 监控 关系型数据库
【MYSQL高级】Mysql找出执行慢的SQL【慢查询日志使用与分析】
【MYSQL高级】Mysql找出执行慢的SQL【慢查询日志使用与分析】
5287 0
|
运维 NoSQL 前端开发
介绍一下Redis的优缺点
【10月更文挑战第19天】介绍一下Redis的优缺点
|
机器学习/深度学习 C# 索引
HashMap的容量为什么一定是2^n?
`HashMap` 的容量设计为 `2^n` 主要出于三个考虑:1) 位运算效率高,通过 `(hash & (capacity - 1))` 快速计算索引;2) 元素分布均匀,减少哈希冲突,提高性能;3) 扩容时只需检查最高位,简化重分布过程,提升扩容效率。初始容量为 `1 &lt;&lt; 4`(16),扩容以2倍递增。
351 0
HashMap的容量为什么一定是2^n?
|
消息中间件 Java 语音技术
Python Http Server实现服务监听和地址回调
在日常第三方地址调用过程中,很多接口时异步接口,可以使用轮询的方式基于第一次请求返回的参数查询处理的结果,这种方式往往比较麻烦,特别是对一些长时间无法处理的任务,往往需要多次轮询才能获取结果。通过配置回调地址的方式来实现调用结果的监听;部分服务如阿里云MNS Topic、腾讯云的CMQ,都支持通过配置HttpEndpoint的方式实现消息的http方式订阅监听;这两种模式都是本地启动:HTTP Server,第三方服务通过已经配置的地址来请求服务,最终实现服务的监听。下面通过一个Python3 Http Server实现对:异步长文本语音合成和mns topic演示相关功能。
24570 7
Python Http Server实现服务监听和地址回调
|
SQL 消息中间件 缓存
阿里云大数据开发三面面经,已过,面试题已配答案
阿里云大数据开发三面面经,已过,面试题已配答案
1583 1
|
Linux Shell Windows
Linux系统之终端管理命令的基本使用
Linux系统之终端管理命令的基本使用
254 1
|
机器学习/深度学习 Python
python利用CNN实现垃圾分类
python利用CNN实现垃圾分类
466 0
|
JavaScript 前端开发 小程序
微服务项目打包部署,一套带走 上
微服务项目打包部署,一套带走 上
|
编解码 移动开发 前端开发
前端书写习惯总结
前端书写习惯总结
|
编解码 网络安全 数据安全/隐私保护
不使用VMTools,宿主机与虚拟机交换文件的方法(接上章)(下)
VMTool虽然方便,但毕竟是专用于虚拟机的软件,将要封装的系统不安装VMTools,易导致一些琐碎问题。下面我给大家介绍一个最常用的宿主机与虚拟机交换文件的方法,当然,比VMTools繁琐,但绝不影响系统封装。
315 0