导航

萌即是正义!时不时分享一些ACG活动记录与有趣代码的小站!

侧边栏
最新评论
广树管理员
2025-11-12 07:07
@Zrzzz:目前没有动静
Zrzzz
2025-11-11 22:38
我活了 大佬的周边什么时候到齐!等更新!!
广树管理员
2025-11-11 18:34
@saber酱:是吧,砂糖和盐都超可爱
saber酱
2025-11-11 18:33
砂糖可爱捏~
广树管理员
2025-11-11 09:10
@贝壳:毕竟只有自己开发才能拿捏的准
攻略中
全民高尔夫环球之旅
暂无评分
Steam全民高尔夫环球之旅
2025年9月07日 12时 ~ 攻略中
已累计游玩2个月7天
《全民高尔夫 环球之旅》除了能体验到与过去作品相同的乐趣、爽快与深奥之外, 还有着以精美图像设计而成、个性丰富的角色们与以世界各地为主题的球场, 以及能让所有人热血沸腾的全新模式等等,是本系列的全新力作!
ToHeart
暂无评分
SteamToHeart
2025年6月26日 19时 ~ 攻略中
已累计游玩4个月19天
AQUAPLUS推出的“温暖人心的校园恋爱游戏”将以高清全3D形式焕新归来!
fault - StP - LIGHTKRAVTE
暂无评分
Steamfault - StP - LIGHTKRAVTE
2025年5月29日 20时 ~ 攻略中
已累计游玩5个月17天
全球累计销量超过50万份的“fault”系列最新作!故事的舞台是一个融合了奇幻与科幻的超前世界——卢森海德王国。本作讲述了生活在此地的一个平凡又平庸的究极普通市民——名为果子的少年的故事。
PSN奖杯卡

PSN奖杯卡

归档
赞助商广告

网页全屏 Fullscreen API 的坑

作者:广树时间:2018-01-26 11:11:10分类:JavaScript

Fullscreen API在H5视频和H5游戏进入全屏的时候非常有用。

但是却隐藏着非常多的坑。


首先,看下兼容情况:

兼容图.png


例子:

点击下面的DEMO进入例子页面,如果浏览器支持的话DIV会全屏显示在屏幕中央。

查看DEMO


使用方法:

document."前缀"FullscreenEnabled 来调查是否支持Fullscreen API

document."前缀"RequestFullscreen()来全屏显示。

document."前缀"ExitFullscreen()来退出全屏显示。


关于前缀如下表显示:

Standard Blink (Chrome & Opera) Gecko (Firefox) Internet Explorer 11 Edge Safari (WebKit)
Document.fullscreen webkitIsFullScreen mozFullScreen - webkitIsFullScreen webkitIsFullScreen
Document.fullscreenEnabled webkitFullscreenEnabled mozFullScreenEnabled msFullscreenEnabled webkitFullscreenEnabled webkitFullscreenEnabled
Document.fullscreenElement webkitFullscreenElement mozFullScreenElement msFullscreenElement webkitFullscreenElement webkitFullscreenElement
Document.onfullscreenchange onwebkitfullscreenchange onmozfullscreenchange MSFullscreenChange onwebkitfullscreenchange onwebkitfullscreenchange
Document.onfullscreenerror onwebkitfullscreenerror onmozfullscreenerror MSFullscreenError onwebkitfullscreenerror onwebkitfullscreenerror
Document.exitFullscreen() webkitExitFullscreen() mozCancelFullScreen() msExitFullscreen() webkitExitFullscreen() webkitExitFullscreen()
Element.requestFullscreen() webkitRequestFullscreen() mozRequestFullScreen() msRequestFullscreen() webkitRequestFullscreen() webkitRequestFullscreen()


坑:

这段时间正好有一个全屏的需求就试了这个接口发现问题真的很多。


坑1:

Fullscreen API 现在有名字混乱的现象,分为Fullscreen 和 FullScreen 看文档的时候要注意,s是否为大写,有没有on!

另外对应的CSS也分为

:-webkit-full-screen

:-moz-full-screen

:-ms-fullscreen

:fullscreen


坑2:

火狐内核不能监听元素的全屏,只能监听document的全屏。


坑3:

iOS不能用!

iOS不能用!

iOS不能用!


各个浏览器的默认样式

Chrome:

默认对象会在屏幕中央显示,未填充部分显示黑色。

CSS 「:-webkit-full-screen」 可以对全屏对象进行位置调节。


Safari

默认会显示在屏幕中央

CSS 「:-webkit-full-screen」可以改变位置,

但是全屏的时候因为有过度,所以位置变更后过度会变得很奇怪。


Firefox

全屏会将对象撑满整个屏幕。

因此「:-moz-full-screen」无法指定宽高。


IE11

全屏对象会显示在画面左上角。

因此「:-ms-fullscreen」不设定的话不会显示在中央。

另外可以通过::-ms-backdrop来改变背景色。


donate.png


telegram banner (1).png


1210 x 50(蓝底).png

cloudcone