[JavaScript] 用html5 js实现浏览器全屏

项目中需要将后台浏览器的窗口全屏,也就是我们点击一个按钮要实现按F11全屏的

效果。 在HTML5中,W3C制定了关于全屏的API,就可以实现全屏幕的效果,也可以

页面中的图片,视频等全屏目前只有google chrome 15 +,safri5.1+,firfox10+,IE11支持

 

全屏

var docElm = document.documentElement;
//W3C  
if (docElm.requestFullscreen) {  
    docElm.requestFullscreen();  
}
//FireFox  
else if (docElm.mozRequestFullScreen) {  
    docElm.mozRequestFullScreen();  
}
//Chrome等  
else if (docElm.webkitRequestFullScreen) {  
    docElm.webkitRequestFullScreen();  
}
//IE11
else if (elem.msRequestFullscreen) {
  elem.msRequestFullscreen();
}

 

退出全屏

if (document.exitFullscreen) {  
    document.exitFullscreen();  
}  
else if (document.mozCancelFullScreen) {  
    document.mozCancelFullScreen();  
}  
else if (document.webkitCancelFullScreen) {  
    document.webkitCancelFullScreen();  
}
else if (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.1
https://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/

posted @ 2014-08-18 17:18  唸随爱  阅读(365)  评论(0编辑  收藏  举报