下面是完整的例子,暂不做分析

<!DOCTYPE html>
<html>
<head>
<title> FullScreen API 演示</title>
<meta name="Generator" content="EditPlus">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="Author" content="renfufei@qq.com">
<meta name="Description" content="http://davidwalsh.name/more-html5-apis">
<script>
// 处理全屏(需要全屏显示DOM元素)
function launchFullScreen(element) {
// 先检测最标准的方法
if(element.requestFullScreen) {
element.requestFullScreen();
} else if(element.mozRequestFullScreen) {
// 其次,检测Mozilla的方法
element.mozRequestFullScreen();
} else if(element.webkitRequestFullScreen) {
// if 检测 webkit的API
element.webkitRequestFullScreen();
}
};
// 退出全屏,不用管具体是哪个元素,因为屏幕是唯一的。
function cancelFullscreen() {
if(document.cancelFullScreen) {
document.cancelFullScreen();
} else if(document.mozCancelFullScreen) {
document.mozCancelFullScreen();
} else if(document.webkitCancelFullScreen) {
document.webkitCancelFullScreen();
}
};
// 显示全屏信息
function dumpFullscreen() {
var d = document;
var fullE = null;
var fullEnable = "fullScreen is disable!";
if(d.fullScreenElement){
fullE = d.fullScreenElement;
} else if(d.mozFullScreenElement){
// 如果有问题,把mozFullscreenElement 改为 mozFullScreenElement,S大写
fullE = d.mozFullScreenElement;
} else if(d.webkitFullscreenElement){
// 本人的为chrome, Fullscreen 之中,s为小写。
fullE = d.webkitFullscreenElement;
}
// 如果有问题,请切换 fullScreen 中 s 的大小写。
if(d.fullScreenEnabled){
fullEnable = d.fullScreenEnabled;
} else if(d.mozFullScreenEnabled){
fullEnable = d.mozFullScreenEnabled;
} else if(d.webkitFullscreenEnabled){
// 注意 Fullscreen 的中间s大小写
fullEnable = d.webkitFullscreenEnabled;
}
//
if(window.console){
console.dir(fullE);
} else if(fullE){
alert(fullE.tagName);
} else {
alert("全屏元素是:"+fullE);
}
//
if(window.console){
console.info("允许全屏:"+fullEnable);
} else if(fullEnable){
alert("允许全屏:"+fullEnable);
} else {
alert("允许全屏:"+fullEnable);
}
};
// 设置事件监听,DOM内容加载完成,和jQuery的$.ready() 效果差不多。
window.addEventListener("DOMContentLoaded", function() {
// 获取DOM元素
var enterfull = document.getElementById("enterfull");
var quitfull = document.getElementById("quitfull");
var dumpfull = document.getElementById("dumpfull"); // 事件监听
enterfull.addEventListener("click", function() {
//
launchFullScreen(document.documentElement);
});
quitfull.addEventListener("click", function() {
//
cancelFullscreen();
});
dumpfull.addEventListener("click", function() {
//
dumpFullscreen();
}); }, false);
// 全屏事件Events
document.addEventListener("fullscreenchange", function(e) {
console.dir(e);
});
document.addEventListener("mozfullscreenchange", function(e) {
console.dir(e);
});
document.addEventListener("webkitfullscreenchange", function(e) {
console.dir(e);
});
</script>
</head> <body> <div>
<button id="enterfull">进入全屏</button><br/>
<button id="quitfull">退出全屏</button><br/>
<button id="dumpfull"> 查看全屏的DOM元素</button><br/>
</div>
</body>
</html>

  

h5的api dom全屏展示的更多相关文章

  1. JavaScript 全屏展示

    浏览器都有页面全屏的功能 F11 ,那么如何用JavaScript控制页面全屏呢?MDN上提供的的API , 一个小demo验证一下! <!DOCTYPE html> <html l ...

  2. echarts图表自适应盒子的大小(盒子的大小是动态改变的),大到需要全屏展示

    项目中用到了echarts,并且页面是自适应的,且页面中有一个[放大.缩小]功能,因此图表还需要根据盒子的大小来变化. 即:两个需求,如下: ① 图表根据窗口的大小自适应 ② 图表根据所在盒子的大小自 ...

  3. js控制页面的全屏展示和退出全屏显示

    <!DOCTYPE html> <html> <meta http-equiv="Content-Type" content="text/h ...

  4. 给echarts加个“全屏展示”

    echarts的工具箱并没有提供放大/全屏的功能, 查找文档发现可自定义工具https://www.echartsjs.com/option.html#toolbox.feature show代码 t ...

  5. requestFullscreen实现全屏展示

    requestFullscreen实现全屏展示. var fullContainer = document.getElementById('fullScreenContainer'); //先把元素展 ...

  6. HTML5在手机端实现视频全屏展示

    最近做项目,遇到一个问题,在手机上要实现视频的全屏播放功能.测试了很久,终于找到解决办法. 第一种:将视频放大来控制. 视频在播放的时候,全屏是根据高度来的,如果设置视频 video 标签的宽度是 1 ...

  7. Fullscreen API:全屏操作

    function launchFullscreen(element) { if(element.requestFullscreen) { element.requestFullscreen(); } ...

  8. 开机自动调用.bat文件且浏览器全屏展示

    1,将 .bat文件放入到以下路径中 C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup 或 C:\Users\Administr ...

  9. vmware中Ubuntu不能全屏展示的问题

    依次打开system settings---------------->Displays----------------->resoluiton调整分辨率,然后右下角点击apply,然后k ...

随机推荐

  1. linux下的进程、网络、性能监控命令

    进程监控 端口   1)netstat -anp | grep xxx   2)lsof  -i:<port> 句柄    lsof  -n | grep xxxx 线程栈   1)gst ...

  2. ASP.NET递归添加树节点

    表设计如图: id        title         parentid 1         asp.net   0 2         c#           0 3         c#_ ...

  3. [转]spring mvc注解方式实现向导式跳转页面

    由于项目需要用到向导式的跳转页面效果,本项目又是用spring mvc实现的,刚开始想到用spring 的webflow,不过webflow太过笨重,对于我们不是很复杂的跳转来说好像有种“杀鸡焉用牛刀 ...

  4. MySQL-python 1.2.3 for Windows and Python 2.7, 32bit and 64bit versions -(亲测可用)

    MySQL-python 1.2.3 for Windows and Python 2.7, 32bit and 64bit versions - See more at: http://www.co ...

  5. Eclipse 完全 设置UTF-8 环境

    当开始一个新的Java项目时,最好将整个环境设置为UTF-8 一般通过如下几步来设置: 1: 设置工作空间的编码格式:Window -> Preferences -> General -& ...

  6. Linux网络管理——Linux网络命令

    3. Linux网络命令 .note-content {font-family: "Helvetica Neue",Arial,"Hiragino Sans GB&quo ...

  7. SQL Server 缓存清理的一些原因

    1.dbcc freeproccache; 2.dbcc freesystemcache('all') | dbcc freesystemcache('pool_name'); 3.declare @ ...

  8. 发送邮件java实现

    下面代码可以实现普通qq邮箱发送邮件的功能,可以传附件,但是是固定的附件: 需要两个jar包:mail.jar,activation.jar mail.jar 下载地址: http://java.su ...

  9. shell脚本中常见的一些特殊符号和作用详解

    这篇文章主要介绍了shell脚本中常见的一些特殊符号和它的作用详解,总结的很简洁,容易看懂,需要的朋友可以参考下   在编写Shell脚本时,我们需要会用到各种各样的特殊符号,通过这些特殊符号可以使我 ...

  10. swift3.0 扩展、协议(4)

    扩展和协议是swift中的两个特性,用于对已有的类型进行扩展和修改. 扩展(extension) 向已经存在的类型添加新的功能(属性.方法.下标脚本等等),扩展使用extension关键字定义,语法 ...