摘要:問題頁面中使用嵌入的時,部分瀏覽器全屏功能錯誤問題詳情問題出現(xiàn)的瀏覽器主要有自帶,火狐按鈕被屏蔽解決方案不使用,新標(biāo)簽頁打開放棄頁面體驗不好不使用,使用模板布局,嵌套頁面放棄模板與樣式?jīng)_突較多,適配后高耦合,不靈活繼續(xù)使用,保持原平臺風(fēng)
問題:頁面中使用iframe嵌入PDF.js的viewer.html時,部分瀏覽器全屏功能錯誤;
問題詳情:問題出現(xiàn)的瀏覽器主要有:edge(win10自帶),火狐(按鈕被屏蔽);
解決方案:
1.不使用iframe,新標(biāo)簽頁打開;- 放棄:頁面體驗不好;
2.不使用iframe,使用模板布局,嵌套頁面;- 放棄:模板與PDF.js樣式?jīng)_突較多,適配后高耦合,不靈活;
3.繼續(xù)使用iframe,保持原平臺風(fēng)格,重寫PDF.js的全屏按鈕操作;- 最終方案:快捷有效,低耦合;
全屏代碼:
button //動作 function fullscreenAction() { var state = document.getElementById("state").innerText; if (state == "no") { fullscreen(); } else { exitFullscreen(); } } //全屏 function fullscreen() { var docElm = document.documentElement; if (docElm.requestFullscreen) { docElm.requestFullscreen(); } else if (docElm.mozRequestFullScreen) { docElm.mozRequestFullScreen(); } else if (docElm.webkitRequestFullScreen) { docElm.webkitRequestFullScreen(); } else if (docElm.msRequestFullscreen) { docElm.msRequestFullscreen(); } } // 退出全屏 function exitFullscreen() { if (document.exitFullscreen) { document.exitFullscreen(); } else if (document.mozCancelFullScreen) { document.mozCancelFullScreen(); } else if (document.webkitCancelFullScreen) { document.webkitCancelFullScreen(); } else if (document.msExitFullscreen) { document.msExitFullscreen(); } } // 監(jiān)聽是否全屏 window.onload = function() { var elem = document.getElementById("state"); document.addEventListener("fullscreenchange", function() { elem.innerText = document.fullscreen ? "yes": "no"; }, false); document.addEventListener("mozfullscreenchange", function() { elem.innerText = document.mozFullScreen ? "yes": "no"; }, false); document.addEventListener("webkitfullscreenchange", function() { elem.innerText = document.webkitIsFullScreen ? "yes": "no"; }, false); document.addEventListener("msfullscreenchange", function() { elem.innerText = document.msFullscreenElement ? "yes": "no"; }, false); }
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/109492.html
摘要:進(jìn)入全屏將全屏顯示。內(nèi)核瀏覽器和表現(xiàn)不同,前者只要求是元素即可,后者則要求必須是文檔流中的元素,比較嚴(yán)格,否則不能全屏顯示。內(nèi)核瀏覽器會阻止除方向鍵控制鍵之外的鍵盤輸入,會在輸入時發(fā)出要求用戶退出全屏狀態(tài)的提示。 第一次看到應(yīng)用 Fullscreen API 全屏顯示網(wǎng)頁,是 FaceBook 中的照片放大。作為一個比較新的 API,目前只有 Safari、Chrome 和 FireF...
摘要:進(jìn)入全屏將全屏顯示。內(nèi)核瀏覽器和表現(xiàn)不同,前者只要求是元素即可,后者則要求必須是文檔流中的元素,比較嚴(yán)格,否則不能全屏顯示。內(nèi)核瀏覽器會阻止除方向鍵控制鍵之外的鍵盤輸入,會在輸入時發(fā)出要求用戶退出全屏狀態(tài)的提示。 第一次看到應(yīng)用 Fullscreen API 全屏顯示網(wǎng)頁,是 FaceBook 中的照片放大。作為一個比較新的 API,目前只有 Safari、Chrome 和 FireF...
摘要:進(jìn)入全屏將全屏顯示。內(nèi)核瀏覽器和表現(xiàn)不同,前者只要求是元素即可,后者則要求必須是文檔流中的元素,比較嚴(yán)格,否則不能全屏顯示。內(nèi)核瀏覽器會阻止除方向鍵控制鍵之外的鍵盤輸入,會在輸入時發(fā)出要求用戶退出全屏狀態(tài)的提示。 第一次看到應(yīng)用 Fullscreen API 全屏顯示網(wǎng)頁,是 FaceBook 中的照片放大。作為一個比較新的 API,目前只有 Safari、Chrome 和 FireF...
閱讀 3498·2021-11-25 09:43
閱讀 1103·2021-11-15 11:36
閱讀 3346·2021-11-11 16:54
閱讀 4011·2021-09-27 13:35
閱讀 4404·2021-09-10 11:23
閱讀 6162·2021-09-07 10:22
閱讀 3071·2021-09-04 16:40
閱讀 800·2021-08-03 14:03