mirror of
https://github.com/wahyd4/wahyd4.github.com.git
synced 2026-08-09 21:36:22 +10:00
- 308 posts reverse-extracted from wahyd4.github.com (Hexo 6.3.0 + NexT 8.25) - Hexo project with NexT theme, reading-experience custom styles - publish-post.sh: write post -> hexo build -> PR (master untouched)
2.7 KiB
2.7 KiB
title, date, tags
| title | date | tags | ||
|---|---|---|---|---|
| HTML5 全屏(full screen)API | 2012-07-22 00:00:00 |
|
full screen (全屏)API,现在已经成为了HTML5的一个官方API,不过目前只是被chrome、firefox、safari浏览器实现了,且他们目前都是用的自行实现的函数,而非W3C官方标准的函数。建议在调用之前都检测一下!
full screen API主要有两个方法:一是执行全屏,另外一个则是退出全屏。他们的调用方法为:
执行全屏
var element = XXX //这里你需要得到你的一个网页中的对象,可以是整个网页,或者其中一个节点
element.requestFullscreen(); //W3C的方法
element.mozRequestFullScreen(); //firefox实现的方法
element.webkitRequestFullScreen(); //chrome 和safari实现的方法
退出全屏
element.exitFullScreen(); //W3C
element.mozCancelFullScreen(); //firefox
element.webkitCancelFullScreen(); //chrome和safari
例如,我想全屏整个页面,那个就应该使用:
var documentEle = document.documentElement;
documentEle.webkitRequestFullScreen(); //chrome
此外我们还可以监听,full screen 事件,在其状态改变时执行相关操作。
document.addEventListener("fullscreenchange", function () {}, false); //w3c
document.addEventListener("mozfullscreenchange",function(){},false); //firefox
document.addEventListener("webkitfullscreenchange", function () {}, false); //chrome 和safari
如果我们想获取当前某个对象数否处于全屏状态,就可以使用下面这个属性:
document.fullScreen //w3c
document.mozFullScreen //firefox
document.webkitIsFullScreen // chrome 和safari
经过我的测试(chrome 22),应该是HTML 里面所有对象都是可以被全屏的,如:,,
,网页本身。不过我们是不能一开始网页就让其处于全屏状态。而需要一些行为来触发这个事件。
在css 里面也有一个对应的选择器来修饰full screen:
html:fullscreen{
font-size:30px;
color:white;
background:blue;
}
html:-moz-full-screen{
font-size:30px;
color:white;
background:blue;
}
html:-webkit-full-screen{
font-size:30px;
color:white;
background:blue;
}
目前IE9 也是不支持full screen 全屏 API的,不知道在IE 10里面支持不!微软在这方面做得真的不怎么样啊。
点我查看我做的demo吧!包含全屏网页,和全屏图片,不过由于图片原因效果不好。但是功能有了。哈哈!