H5 DOM 全屏 api requestFullscreen
来源:互联网 发布:js ajax 实例 编辑:程序博客网 时间:2024/05/21 19:40
js 设置、退出和判断全屏的方法
- 设置全屏
- 退出全屏
- 全屏属性
- 全屏事件
- 全屏状态的CSS
设置全屏
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
退出全屏
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
属性
fullscreenElement
- 1
- 2
- 3
fullscreenElement属性返回正处于全屏状态的Element节点,如果当前没有节点处于全屏状态,则返回null。
fullscreenEnabled
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
fullscreenEnabled属性返回一个布尔值,表示当前文档是否可以切换到全屏状态。
判断全屏
fullscreenchange
- 1
- 2
- 3
- 4
- 5
- 6
- 7
fullscreenchange事件:浏览器进入或离开全屏时触发。
fullscreenerror
- 1
- 2
- 3
- 4
- 5
- 6
- 7
fullscreenerror事件:浏览器无法进入全屏时触发,可能是技术原因,也可能是用户拒绝。
更详细的全屏判断请点击这里
全屏状态下的CSS
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
全屏状态下,大多数浏览器的CSS支持:full-screen伪类,只有IE11支持:fullscreen伪类。使用这个伪类,可以对全屏状态设置单独的CSS属性。
目录
- js 设置退出和判断全屏的方法
- 设置全屏
- 退出全屏
- 属性
- fullscreenElement
- fullscreenEnabled
- 判断全屏
- fullscreenchange
- fullscreenerror
- 全屏状态下的CSS
- 目录
- 浏览器兼容
- 参考链接
- js 设置退出和判断全屏的方法
浏览器兼容
- IE11+
- Chrome
- FireFox
参考链接
http://javascript.ruanyifeng.com/htmlapi/fullscreen.html#toc7
判断浏览器是否支持requestFullscreen
首先是一段判断浏览器是否支持h5全屏api(requestFullscreen)的代码,如下:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
现在来区分一下全屏的两种情况
第一种:局部全屏,这里得把使用h5全屏api(requestFullscreen)和使用浏览器自带的全屏快捷键F11区分开来,如下图:
图1:这是未进行任何全屏下的状态
图2:这是使用h5全屏api(requestFullscreen)后的全屏
图3:这是使用浏览器自带的全屏快捷键F11达到的全屏
效果显而易见,按F11快捷键的全屏只是把浏览器地址栏给隐藏掉了而已,而h5的全屏api将“需要全屏的dom元素”给全屏了,这个时候就无需判断F11快捷键的全屏了,只需判断h5全屏的属性(fullscreenElement)即可,代码如下:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
第二种:整个页面被一个标签铺满,页面没有出现滚动条的全屏(通常是在做网页游戏),在这种情况下,使用h5全屏api(requestFullscreen)和使用浏览器自带的全屏快捷键F11达到的效果是一样的,如下图。
在这种情况下,全屏判断就得考虑是否是按了F11键全屏,此时,就不能使用h5的判断全屏的属性(fullscreenElement)去判断全屏了,此属性只在调用setFullscreen函数全屏时判断有效,而在使用浏览器“F11”全屏快捷键的时候无效,这个时候得根据浏览器可视区域与电脑屏幕大小做比较,来判断是否全屏,无论是setFullscreen函数还是按“F11”亲测有效。代码如下:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
总结
√:方法有效;
×:方法无效;
TODO
目前还无法判断有滚动条按f11的全屏状态。
原文地址: http://blog.csdn.net/k358971707/article/details/60465689
- H5 DOM 全屏 api requestFullscreen
- Element.requestFullScreen() -- 全屏显示
- HTML5 requestFullScreen&exitFullscreen全屏兼容方案
- H5实现浏览器全屏API(全屏进入和全屏退出)
- h5全屏
- WebView全屏播放h5视频
- Android h5全屏播放video
- h5 form api 表单API
- H5定位地理位置API
- H5 Canvas JS API
- h5 selectors api
- H5新增API
- H5拖放API
- h5扩展api
- DOM元素全屏显示解决方案
- HTML5 全屏 API
- HTML5 全屏 API
- HTML5 全屏 API
- js获取当前页面url网址信息
- Oracle SYS_CONNECT_BY_PATH函数使用
- 使用crontab,让linux定时执行shell脚本
- 蓝桥杯 数字三角形
- HttpWebRequest.CookieContainer与HttpWebResponse.Cookies的区别和联系
- H5 DOM 全屏 api requestFullscreen
- bzoj2742 [HEOI2012]Akai的数学作业 (数学)
- MODBUS简介
- 青否云
- Reinforcement Learning_By David Silver笔记二: Markov Decision Processes
- iOS 上下滚动轮播的实现
- 求最大公约数
- 转发博客
- 关于Intent与Bundle的不解之缘