用html5 js实现点击一个按钮达到浏览器全屏效果
项目中需要将后台浏览器的窗口全屏,也就是我们点击一个按钮要实现按F11全屏的效果。在HTML5中,W3C制定了关于全屏的API,就可以实现全屏幕的效果,也可以让页面中的图片,视频等全屏目前只有googlechrome15+,safri5.1+,firfox10+,IE11支持
全屏
vardocElm=document.documentElement;
//W3C
if(docElm.requestFullscreen){
docElm.requestFullscreen();
}
//FireFox
elseif(docElm.mozRequestFullScreen){
docElm.mozRequestFullScreen();
}
//Chrome等
elseif(docElm.webkitRequestFullScreen){
docElm.webkitRequestFullScreen();
}
//IE11
elseif(elem.msRequestFullscreen){
elem.msRequestFullscreen();
}
退出全屏
if(document.exitFullscreen){
document.exitFullscreen();
}
elseif(document.mozCancelFullScreen){
document.mozCancelFullScreen();
}
elseif(document.webkitCancelFullScreen){
document.webkitCancelFullScreen();
}
elseif(document.msExitFullscreen){
document.msExitFullscreen();
}
事件监听
document.addEventListener("fullscreenchange",function(){
fullscreenState.innerHTML=(document.fullscreen)?"":"not";},false);
document.addEventListener("mozfullscreenchange",function(){
fullscreenState.innerHTML=(document.mozFullScreen)?"":"not";},false);
document.addEventListener("webkitfullscreenchange",function(){
fullscreenState.innerHTML=(document.webkitIsFullScreen)?"":"not";},false);
document.addEventListener("msfullscreenchange",function(){
fullscreenState.innerHTML=(document.msFullscreenElement)?"":"not";},false);
全屏样式设置
在浏览器全屏的使用我们还可以进行样式设置
html:-moz-full-screen{
background:red;
}
html:-webkit-full-screen{
background:red;
}
html:fullscreen{
background:red;
}
附录
1一个在线的Demo
http://robnyman.github.io/fullscreen/
2 HTML5全屏API之网络钓鱼
http://www.36ria.com/5807
3 jquery封装的全屏插件
http://johndyer.name/native-fullscreen-javascript-api-plus-jquery-plugin/
4 更加详细的全屏API介绍
4.1https://developer.mozilla.org/en-US/docs/Web/Guide/API/DOM/Using_full_screen_mode
4.2 https://dvcs.w3.org/hg/fullscreen/raw-file/tip/Overview.html
5 HTML5全屏API在FireFox/Chrome中的显示差异
http://www.zhangxinxu.com/wordpress/2012/10/html5-full-screen-api-firefox-chrome-difference/