最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JavaScript實現(xiàn)頁面全屏展示功能

 更新時間:2026年02月04日 09:14:20   作者:小明記賬簿  
這篇文章主要為大家詳細介紹了如何使用JavaScript實現(xiàn)頁面全屏展示功能,文中的示例代碼講解詳細,具有一定的借鑒價值,感興趣的小伙伴可以了解下

最近做一個網(wǎng)頁項目,用戶要求可以全屏展示,進入系統(tǒng)后隱藏地址欄,于是乎,經(jīng)過調(diào)研就選擇了全屏API,即便如此還是遇到了一些問題,總結(jié)一下,寫下此篇文章,以免以后再遇到相同的問題。

在JavaScript中,實現(xiàn)頁面全屏展示主要依賴于HTML5的Fullscreen API,這是一個相對較新的技術(shù),因此在舊版本的瀏覽器上可能不受支持,現(xiàn)代瀏覽器支出如下。

檢查瀏覽器是否支持Fullscreen API

在嘗試使用Fullscreen API之前,最好先檢查瀏覽器是否支持它。雖然現(xiàn)代瀏覽器普遍支持,但檢查總是好的做法。

if (document.fullscreenEnabled ||
    document.mozFullScreenEnabled ||
    document.webkitFullscreenEnabled ||
    document.msFullscreenEnabled) {
    // 支持全屏
} else {
    // 不支持全屏
}

全屏模式

獲取Element節(jié)點,然后使用requestFullscreen方法,可以使得這個節(jié)點全屏,全屏模式的具體實現(xiàn)可能因瀏覽器而異,所以要做不同瀏覽器處理。

const openFullScreen = () => {
  const full = document.getElementById('fullscreen')
  if (full.RequestFullScreen) {
    full.RequestFullScreen()
  } else if (full.mozRequestFullScreen) {
    full.mozRequestFullScreen()
  } else if (full.webkitRequestFullScreen) {
    full.webkitRequestFullScreen()
  } else if (full.msRequestFullscreen) {
    full.msRequestFullscreen()
  }
}

退出全屏模式

退出全屏模式可以通過調(diào)用document.exitFullscreen()方法實現(xiàn)。這個方法會嘗試讓當前處于全屏模式的元素退出全屏。用戶手動按下ESC鍵,也可以退出全屏鍵。

const exitFullScreen = () => {
  if (document.exitFullScreen) {
    document.exitFullScreen();
  } else if (document.mozCancelFullScreen) {
    document.mozCancelFullScreen();
  } else if (document.webkitExitFullscreen) {
    document.webkitExitFullscreen();
  } else if (document.msExitFullscreen) {
    document.msExitFullscreen();
  }
}

獲取全屏元素

document.fullscreenElement屬性返回正處于全屏狀態(tài)的Element節(jié)點,如果當前沒有節(jié)點處于全屏狀態(tài),則返回null??梢酝ㄟ^此方法判斷是否在全屏狀態(tài)。

const fullscreenElement =
  document.fullscreenElement ||
  document.mozFullScreenElement ||
  document.webkitFullscreenElement;

注意事項

想要全屏的元素都應該在這個Element節(jié)點下面,否則的話全屏時不會展示。如下圖的html結(jié)構(gòu),點擊單開彈框依然無法在全屏模式下看到彈窗,推出全屏時會看到彈窗已經(jīng)出現(xiàn)。如果想避免這種莫名的問題,可以把document.getElementById('fullscreen') 改成document.documentElement,讓整個HTML全屏。

requestFullscreen方法只能是用戶主動觸發(fā)才可以,如果想在頁面加載時通過js調(diào)用方法或者是觸發(fā)click事件觸發(fā),我勸你還是放棄吧,在控制臺出現(xiàn)如下警告:

刷新頁面也會自動退出全屏模式;

如果想改變?nèi)翣顟B(tài)時的樣式,首先可以在全屏時添加一個calss,此外也可以使用:full-screen偽類,大部分瀏覽器都支持,檢查全屏時元素,也是有使用:full-screen偽類的。

到此這篇關(guān)于JavaScript實現(xiàn)頁面全屏展示功能的文章就介紹到這了,更多相關(guān)JavaScript頁面全屏展示內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 原生JavaScript編寫俄羅斯方塊

    原生JavaScript編寫俄羅斯方塊

    本文給大家分享的是使用原生javascript實現(xiàn)的俄羅斯方塊的代碼,還沒有很完善,這里放出來,算是拋磚引玉吧,希望小伙伴們能夠喜歡。
    2015-03-03
  • 使用JavaScript實現(xiàn)二值化圖像

    使用JavaScript實現(xiàn)二值化圖像

    這篇文章主要為大家詳細介紹了使用JavaScript將圖像轉(zhuǎn)換為黑白二值圖的兩種方法,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學習一下
    2024-01-01
  • javascript函數(shù)的節(jié)流[throttle]與防抖[debounce]

    javascript函數(shù)的節(jié)流[throttle]與防抖[debounce]

    這篇文章主要介紹了javascript函數(shù)的節(jié)流[throttle]與防抖[debounce ],詳細的介紹了節(jié)流與防抖的原理和示例,具有一定的參考價值,有興趣的可以了解一下
    2017-11-11
  • 深入淺出JavaScript中base64編碼原理

    深入淺出JavaScript中base64編碼原理

    今天翻開舊項目發(fā)現(xiàn)挺多圖片相關(guān)的插件都是用?base64?來顯示圖片的。談到?base64,腦海遐想翩翩,思緒回蕩之下?base64?瑕瑜互見。這篇文章主要是記錄了工作中遇見的問題并加以總結(jié),如有不妥請指正
    2023-02-02
  • 各瀏覽器對click方法的支持差異小結(jié)

    各瀏覽器對click方法的支持差異小結(jié)

    click方法可以用來模擬用戶點擊。有的瀏覽器中所有元素都具有click方法,有的瀏覽器則沒有。
    2011-07-07
  • 基于JavaScript制作一個簡單的天氣應用

    基于JavaScript制作一個簡單的天氣應用

    隨著Web開發(fā)技術(shù)的不斷發(fā)展,JavaScript已經(jīng)成為前端開發(fā)中不可或缺的一部分,下面我們就來看看如何使用JavaScript實現(xiàn)一個簡單的天氣應用吧
    2024-01-01
  • js blob類型url的視頻下載問題的解決

    js blob類型url的視頻下載問題的解決

    這篇文章主要介紹了js blob類型url的視頻下載問題的解決,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-11-11
  • Javascript模板技術(shù)

    Javascript模板技術(shù)

    Javascript模板技術(shù)...
    2007-04-04
  • js中實例與對象的區(qū)別講解

    js中實例與對象的區(qū)別講解

    今天小編就為大家分享一篇關(guān)于js中實例與對象的區(qū)別講解,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-01-01
  • js中的數(shù)組對象排序分析

    js中的數(shù)組對象排序分析

    這篇文章為大家分析一下js中的數(shù)組對象排序的一些知識,方便大家在以后使用中知道這些排序的原理
    2018-12-12

最新評論

南宁市| 蕉岭县| 和静县| 安庆市| 连云港市| 射阳县| 合作市| 谷城县| 丽江市| 理塘县| 太仆寺旗| 涪陵区| 简阳市| 黎城县| 平塘县| 全州县| 凤庆县| 修水县| 开封市| 瑞安市| 榆树市| 神池县| 云南省| 垫江县| 闽清县| 隆化县| 柘荣县| 大兴区| 郯城县| 和田县| 潍坊市| 平南县| 思茅市| 托克逊县| 繁昌县| 石泉县| 苏州市| 闽侯县| 平乐县| 广汉市| 屏东市|