用JavaScript使网页全屏显示_如何使网页全屏显示

时间: 2018-05-14阅读: 149标签: 全屏

我们在写前端网页或者做前端小游戏的时候,为了提高用户体验,需要请求网页全屏显示(这点对于手机端的页游很重要),这个需求可以通过JavaScript实现。

我们要实现的效果如下:屏幕内除了网页没有任何其他信息。


我们首先要向浏览器发出请求,由于不同浏览器所提供的请求接口不同,我们把这些请求都罗列上,最终写出这样的一个函数:

function requestFullScreen(element) {  
    var requestMethod = element.requestFullScreen || element.webkitRequestFullScreen || element.mozRequestFullScreen || element.msRequestFullScreen;  
    if (requestMethod) {  
        requestMethod.call(element);  
    } else if (typeof window.ActiveXObject !== "undefined") {  
        var wscript = new ActiveXObject("WScript.Shell");  
        if (wscript !== null) {  
            wscript.SendKeys("{F11}");  
        }  
    }  
}


接下来就是调用函数了,你可能想要页面加载进来就是全屏的,接下来你会用

onload(function () {  
    requestFullScreen(document.documentElement)  
})


这是不行的,浏览器一般规定,请求全屏的事件只能由用户发出,即是说用户可以通过点击事件实现全屏,也可以通过其他事件,但唯独onload这种,并非用户给出的事件,浏览器不认为是用户请求。

正确的方法是:

$('#unlock').click(function () {  
   requestFullScreen(document.documentElement);  
})


这样是允许的,至于怎样使网页实现好的效果,你可以在主页面之前加一个登录页面,点击登录实现全屏并移除登陆页。


示例:

<!DOCTYPE html>  
<html>  
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />  
<body>  
<div style="margin:0 auto;height:600px;width:700px;">  
    <button id="btn">js控制页面的全屏展示和退出全屏显示</button>  
    <div id="content" style="margin:0 auto;height:500px;width:700px; background:#ccc;" >  
        <h1>js控制页面的全屏展示和退出全屏显示</h1>  
    </div>  
</div>  
</body>  
<script language="JavaScript">  
    document.getElementById("btn").onclick=function(){  
        var elem = document.getElementById("content");  
        requestFullScreen(elem);  
    };  
    function requestFullScreen(element) {  
        var requestMethod = element.requestFullScreen || element.webkitRequestFullScreen || element.mozRequestFullScreen || element.msRequestFullScreen;  
        if (requestMethod) {  
            requestMethod.call(element);  
        } else if (typeof window.ActiveXObject !== "undefined") {  
            var wscript = new ActiveXObject("WScript.Shell");  
            if (wscript !== null) {  
                wscript.SendKeys("{F11}");  
            }  
        }  
    }  
</script>  
</html>


来源:https://blog.csdn.net/ScapeD/article/details/80297743