如何实现全屏?

本文详细介绍了如何使用JavaScript实现全屏和退出全屏操作,包括发出全屏请求的Promise机制、全屏事件监听,以及不同浏览器的兼容性处理方法。

全屏

Element.requestFullscreen()
(1)该方法发出异步请求,使元素以全屏模式显示。
(2)请求浏览器(user agent)将特定元素(甚至延伸到它的后代元素)置为全屏模式,隐去屏幕上的浏览器所有 UI 元素,以及其它应用。返回一个 Promise,并会在全屏模式被激活的时候变成 resolved 状态。
(3)不能保证元素会进入全屏模式。如果授予进入全屏模式的权限,返回的Promise将被解析并且该元素将收到一个fullscreenchange事件以告知它现在处于全屏模式。如果权限被拒绝,promise 将被拒绝,元素将接收一个fullscreenerror事件。如果该元素已从原始文档中分离出来,则该文档将接收这些事件。
(4)支持传参 FullscreenOptions。

navigationUI控制元素处于全屏模式时是否显示导航 UI。默认值是"auto",表示浏览器应该决定做什么。
hide浏览器的导航界面将被隐藏,屏幕的整个尺寸将分配给元素的显示。
show浏览器将呈现页面导航控件和可能的其他用户界面;元素的尺寸(以及屏幕的感知尺寸)将被限制以便为该用户界面留出空间。
auto浏览器将选择应用上述哪些设置。这是默认值。



退出全屏

Document.exitFullscreen()
(1)用于请求从全屏模式切换到窗口模式,会返回一个 Promise,会在全屏模式完全关闭的时候被置为 resolved 状态。
(2)用户通过按 ESC 键(或 F11)即可退出全屏模式。


事件

fullscreenchange 可用来检测全屏模式何时打开和关闭。当全屏或退出全屏时发送消息给(监听的)的 Document 或 Element 。

fullscreenerror 在全屏模式和窗口模式之间切换过程中何时发生错误。当全屏或退出全屏是发生了错误时,将错误消息发送给(监听的)的 Document 或 Element 。



浏览器兼容

全屏

  • requestFullscreen
  • mozRequestFullScreen
  • webkitRequestFullscreen
  • msRequestFullscreen

退出全屏

  • exitFullscreen
  • mozCancelFullScreen
  • webkitExitFullscreen
  • msExitFullscreen
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值