国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

JS 全屏和退出全屏詳解及實例代碼

2019-11-19 19:02:36
字體:
來源:轉載
供稿:網友

JS 全屏和退出全屏

js實現瀏覽器窗口全屏和退出全屏的功能,市面上主流瀏覽器如:谷歌、火狐、360等都是兼容的,不過IE低版本有點瑕疵(全屏狀態下仍有底部的狀態欄)。

這個demo基本是夠了,直接復制下面的源碼另存為html文件看效果吧。

<!DOCTYPE html><html><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>js全屏和退出全屏代碼</title><body><!-- requestFullScreen(document.documentElement): 整個網頁進入全屏  requestFullScreen(document.getElementById("video-box")): 指定某塊區域全屏 --><button onclick="requestFullScreen(document.documentElement)">全屏顯示</button><button onclick="exitFull()">退出全屏</button></body><script type="text/javascript">function requestFullScreen(element) { // 判斷各種瀏覽器,找到正確的方法 var requestMethod = element.requestFullScreen || //W3C element.webkitRequestFullScreen || //Chrome等 element.mozRequestFullScreen || //FireFox element.msRequestFullScreen; //IE11 if (requestMethod) {  requestMethod.call(element); } else if (typeof window.ActiveXObject !== "undefined") {//for Internet Explorer  var wscript = new ActiveXObject("WScript.Shell");  if (wscript !== null) {   wscript.SendKeys("{F11}");  } }}

//退出全屏 判斷瀏覽器種類

function exitFull() { // 判斷各種瀏覽器,找到正確的方法 var exitMethod = document.exitFullscreen || //W3C document.mozCancelFullScreen || //Chrome等 document.webkitExitFullscreen || //FireFox document.webkitExitFullscreen; //IE11 if (exitMethod) {  exitMethod.call(document); } else if (typeof window.ActiveXObject !== "undefined") {//for Internet Explorer  var wscript = new ActiveXObject("WScript.Shell");  if (wscript !== null) {   wscript.SendKeys("{F11}");  } }}</script></html>

感謝閱讀,希望嫩幫助到大家,謝謝大家對本站的支持!

以下是其它網友的補充

我們知道,瀏覽器全屏通常按快捷鍵F11。JS控制瀏覽器全屏也不稀奇,它讓Web應用看上去更像似原生軟件應用效果。比如點餐系統、叫號系統等等。

JS讓瀏覽器全屏及退出全屏的方法網上很多,這不是重點,重點是需注意:瀏覽器全屏只能通過鼠標手勢點擊事件去觸發。

JS全屏方法

var $fullScreen = document.getElementById("js-fullScreen");//按鈕 if ($fullScreen) {   $fullScreen.addEventListener("click", function () {     var docElm = document.documentElement;     if (docElm.requestFullscreen) {       docElm.requestFullscreen();     }     else if (docElm.msRequestFullscreen) {       docElm.msRequestFullscreen();     }     else if (docElm.mozRequestFullScreen) {       docElm.mozRequestFullScreen();     }     else if (docElm.webkitRequestFullScreen) {       docElm.webkitRequestFullScreen();     }   }, false); } 

JS退出全屏方法

var $cancelFullScreen = document.getElementById("js-cancelFullScreen"); if ($cancelFullScreen) {   $cancelFullScreen.addEventListener("click", function () {     if (document.exitFullscreen) {       document.exitFullscreen();     }     else if (document.msExitFullscreen) {       document.msExitFullscreen();     }     else if (document.mozCancelFullScreen) {       document.mozCancelFullScreen();     }     else if (document.webkitCancelFullScreen) {       document.webkitCancelFullScreen();     }   }, false); } 

控制臺警告

Failed to execute 'requestFullscreen' on 'Element': API can only be initiated by a user gesture.

釋義:在"Element"上執行"requestFullscreen"方法失敗,javascript API僅允許通過手勢去創建!(即沒有權限)

通常是由于程序員想觸發瀏覽器自動全屏顯示而導致。但是很抱歉,此方法行不通,必須通過手勢去創建,哪怕onload、trigger()、mouseover也觸發不了!

官方解釋

該Element.requestFullscreen()方法發出異步請求,使元素全屏顯示。但不能保證元素將被放入全屏模式。

如果允許進入全屏模式,文檔將收到一個fullscreenchange事件,讓它知道它現在處于全屏模式。如果權限被拒絕,則文檔會接收到一個fullscreenerror事件。

結論

可能出于用戶操作體驗的考慮吧,客戶端javascript讓瀏覽器全屏只能通過鼠標手勢點擊事件去觸發,即click()。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 长沙县| 股票| 南陵县| 章丘市| 弥勒县| 苍南县| 交口县| 临沭县| 台东县| 赤壁市| 石嘴山市| 桐梓县| 宿迁市| 仪陇县| 武隆县| 沂水县| 林州市| 宾阳县| 杭锦旗| 综艺| 友谊县| 睢宁县| 泸西县| 天津市| 拉孜县| 乐安县| 昭通市| 行唐县| 甘肃省| 阿拉善盟| 噶尔县| 平昌县| 饶河县| 普兰县| 南京市| 海盐县| 平度市| 宁波市| 泰兴市| 平塘县| 全椒县|