全屏功能实现

266 阅读1分钟

    <div>
        <span>欢迎光临我的掘金</span>
        <button id="fullBtn">全屏</button>
    </div>
    <script>
        let fullFlag = false;
        document.querySelector('#fullBtn').onclick = function(){
            if(!fullFlag){
                let el = document.documentElement;
                let rfs = el.requestFullScreen || el.webkitRequestFullScreen || el.mozRequestFullScreen || el.msRequestFullscreen;
                if (typeof rfs != "undefined" && rfs) {
                    rfs.call(el);
                } else if (typeof window.ActiveXObject !== "undefined") {
                    //for IE,这里其实就是模拟了按下键盘的F11,使浏览器全屏
                    let wscript = new ActiveXObject("WScript.Shell");
                    if (wscript != null) {
                        wscript.SendKeys("{F11}");
                    }
                }
                fullFlag = true;
                document.querySelector('#fullBtn').innerHTML="取消";
            }else{
                let el = document;
                let cfs = el.cancelFullScreen || el.webkitCancelFullScreen || el.mozCancelFullScreen || el.exitFullScreen || el.msExitFullscreen;
                if (cfs) {
                    cfs.call(el);
                } else if (typeof window.ActiveXObject !== "undefined") {
                    //for IE,这里和fullScreen相同,模拟按下F11键退出全屏
                    let wscript = new ActiveXObject("WScript.Shell");
                    if (wscript != null) {
                        wscript.SendKeys("{F11}");
                    }
                }
                fullFlag = false;
                document.querySelector('#fullBtn').innerHTML="全屏";
            }

        }
    </script>