用html5 js实现点击一个按钮达到浏览器全屏效果


Posted in Javascript onMay 28, 2014

项目中需要将后台浏览器的窗口全屏,也就是我们点击一个按钮要实现按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/

Javascript 相关文章推荐
js中function()使用方法
Dec 24 Javascript
jquery实现input输入框实时输入触发事件代码
Jan 28 Javascript
jQuery中removeProp()方法用法实例
Jan 05 Javascript
详解JavaScript中的Unescape()和String() 函数
Nov 09 Javascript
每个程序员都需要学习 JavaScript 的7个理由小结
Sep 03 Javascript
jQuery使用$获取对象后检查该对象是否存在的实现方法
Sep 04 Javascript
vue高德地图之玩转周边
Jun 16 Javascript
对vuejs的v-for遍历、v-bind动态改变值、v-if进行判断的实例讲解
Aug 27 Javascript
JavaScript栈和队列相关操作与实现方法详解
Dec 07 Javascript
js getBoundingClientRect使用方法详解
Jul 17 Javascript
Vue登录主页动态背景短视频制作
Sep 21 Javascript
Vant 在vue-cli 4.x中按需加载操作
Nov 05 Javascript
浅析JavaScript基本类型与引用类型
May 28 #Javascript
最短的IE判断var ie=!-[1,]分析
May 28 #Javascript
jQuery 1.9使用$.support替代$.browser的使用方法
May 27 #Javascript
什么是cookie?js手动创建和存储cookie
May 27 #Javascript
js打开windows上的可执行文件示例
May 27 #Javascript
JavaScript数值数组排序示例分享
May 27 #Javascript
JavaScript作用域链示例分享
May 27 #Javascript
You might like
PHP中的gzcompress、gzdeflate、gzencode函数详解
2014/07/29 PHP
在Win7 中为php扩展配置Xcache
2014/10/08 PHP
Tab页界面,用jQuery及Ajax技术实现
2009/09/21 Javascript
Bootstrap 粘页脚效果
2016/03/28 Javascript
KnockoutJS 3.X API 第四章之click绑定
2016/10/10 Javascript
Angular 输入框实现自定义验证功能
2017/02/19 Javascript
Angular中ng-bind和ng-model的区别实例详解
2017/04/10 Javascript
Angular.js中定时器循环的3种方法总结
2017/04/27 Javascript
浅谈react+es6+webpack的基础配置
2017/08/09 Javascript
ReactJs实现树形结构的数据显示的组件的示例
2017/08/18 Javascript
使用Vuex解决Vue中的身份验证问题
2018/09/28 Javascript
Node.js中的不安全跳转如何防御详解
2018/10/21 Javascript
vue-cli脚手架打包静态资源请求出错的原因与解决
2019/06/06 Javascript
django js 实现表格动态标序号的实例代码
2019/07/12 Javascript
Vue中jsx不完全应用指南小结
2019/11/01 Javascript
Vuex实现购物车小功能
2020/08/17 Javascript
Python文件夹与文件的操作实现代码
2014/07/13 Python
python实现简单爬虫功能的示例
2016/10/24 Python
离线安装Pyecharts的步骤以及依赖包流程
2020/04/23 Python
python实现堆排序的实例讲解
2020/02/21 Python
升级keras解决load_weights()中的未定义skip_mismatch关键字问题
2020/06/12 Python
Python接口测试环境搭建过程详解
2020/06/29 Python
Python 爬虫性能相关总结
2020/08/03 Python
Django通过设置CORS解决跨域问题
2020/11/26 Python
海外淘书首选:AbeBooks
2017/07/31 全球购物
学习演讲稿范文
2014/05/10 职场文书
物流专业自荐信
2014/05/23 职场文书
新疆民族团结演讲稿
2014/08/27 职场文书
结婚仪式主持词
2015/06/29 职场文书
社区低保工作总结2015
2015/07/23 职场文书
新员工入职感想
2015/08/07 职场文书
学习十八大的感悟
2015/08/11 职场文书
2016年暑期教师培训心得体会
2016/01/09 职场文书
长辈生日祝福语大全(72句)
2019/08/09 职场文书
maven依赖的version声明控制方式
2022/01/18 Java/Android
Elasticsearch 批量操作
2022/04/19 Python