用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 相关文章推荐
麦鸡的TAB切换功能结合了javascript和css
Dec 17 Javascript
从面试题学习Javascript 面向对象(创建对象)
Mar 30 Javascript
jquery图片延迟加载 前端开发技能必备系列
Jun 18 Javascript
JavaScript splice()方法详解
Sep 22 Javascript
jquery的attr方法禁用表单元素禁用输入内容
Jun 23 Javascript
jquery手风琴特效插件
Feb 04 Javascript
JavaScript获取页面中第一个锚定文本的方法
Apr 03 Javascript
Immutable 在 JavaScript 中的应用
May 02 Javascript
jQuery Ajax 异步加载显示等待效果代码分享
Aug 01 Javascript
分享JS代码实现鼠标放在输入框上输入框和图片同时更换样式
Sep 01 Javascript
AngularJs 延时器、计时器实例代码
Sep 16 Javascript
Vue实现剪贴板复制功能
Dec 31 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 生成微信红包代码简单
2016/03/25 PHP
PHP数据的提交与过滤基本操作实例详解
2016/11/11 PHP
脚本吧 - 幻宇工作室用到js,超强推荐base.js
2006/12/23 Javascript
在JavaScript中获取请求的URL参数[正则]
2010/12/25 Javascript
JSONP 跨域访问代理API-yahooapis实现代码
2012/12/02 Javascript
Javascript常用小技巧汇总
2015/06/24 Javascript
JS拖拽插件实现步骤
2015/08/03 Javascript
JS实现浏览器状态栏文字从右向左弹出效果代码
2015/10/27 Javascript
深入理解逻辑表达式的用法 与或非的用法
2016/06/06 Javascript
全面解析Javascript无限添加QQ好友原理
2016/06/15 Javascript
AngularJS基础 ng-disabled 指令详解及简单示例
2016/08/01 Javascript
jQuery 生成svg矢量二维码
2016/08/09 Javascript
基于Bootstrap 3 JQuery及RegExp的表单验证功能
2017/02/16 Javascript
让你5分钟掌握9个JavaScript小技巧
2018/06/09 Javascript
微信小程序wx:for循环的实例详解
2018/10/07 Javascript
详解微信小程序获取当前时间及日期的方法
2019/04/28 Javascript
webpack实践之DLLPlugin 和 DLLReferencePlugin的使用教程
2019/06/10 Javascript
vue实现验证用户名是否可用
2021/01/20 Vue.js
[02:24]DOTA2痛苦女王 英雄基础教程
2013/11/26 DOTA
[01:05:40]VG vs Newbee 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/20 DOTA
深入讨论Python函数的参数的默认值所引发的问题的原因
2015/03/30 Python
基python实现多线程网页爬虫
2015/09/06 Python
python+pandas生成指定日期和重采样的方法
2018/04/11 Python
Python堆排序原理与实现方法详解
2018/05/11 Python
python爬取天气数据的实例详解
2020/11/20 Python
如何用Python提取10000份log中的产品信息
2021/01/14 Python
使用HTML5里的classList操作CSS类
2016/06/28 HTML / CSS
德国黑胶唱片、街头服装及运动鞋网上商店:HHV
2018/08/24 全球购物
个性化皮包、小袋、生活配件:Mon Purse
2019/03/26 全球购物
英国书籍、CD、DVD和游戏的第一道德零售商:Awesome Books
2020/02/22 全球购物
颇特女士:NET-A-PORTER(直邮中国)
2020/07/11 全球购物
大学本科毕业生的自我鉴定范文
2013/11/19 职场文书
房屋公证委托书
2014/04/03 职场文书
四风问题党员个人整改措施
2014/10/27 职场文书
2016年小学“我们的节日·中秋节”活动总结
2016/04/05 职场文书
mysql中varchar类型的日期进行比较、排序等操作的实现
2021/11/17 MySQL