从零开始学 Web 之 HTML5(三)网络监听,全屏,文件读取,地理定位接口,应用程序缓存

大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新......

github:https://github.com/Daotin/Web

微信公众号:Web前端之巅

博客园:

CSDN:https://blog.csdn.net/lvonve/

在这里我会从 Web 前端零基础开始,一步步学习 Web 相关的知识点,期间也会分享一些好玩的项目。现在就让我们一起进入 Web 前端学习的冒险之旅吧!

一、网络监听接口

ononline:网络连通时触发

onoffline:网络断开时触发

window.addEventListener("online", function(){}); window.addEventListener("offline", function(){}); 二、全屏接口

全屏操作的主要方法和属性:

1、requestFullScreen(); 开启全屏显示

但是不同的浏览器需要添加的前缀不同:

chrome:webkit , firefox:moz ,IE:ms

于是就变成了 webkitRequestFullScreen(), mozRequestFullScreen(), msRequestFullScreen()。由于使用的方法不同,所以要做兼容性处理。

2、cancelFullScreen(); 退出全屏显示

退出全屏的操作也要加前缀,并且调用其的元素只能是 ducument,而不能是其他元素。

3、fullscreenElement;是否是全屏状态

判断是否为全屏状态也要加前缀,并且调用其的元素只能是 ducument,而不能是其他元素。(注意只有 firefox是驼峰写法,最符合 html5 标准)

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <div> <img src="http://www.likecs.com/images/l1.jpg"><br> <input type="button" value="进入全屏"> <input type="button" value="退出全屏"> <input type="button" value="是否全屏"> </div> <script> // 开启全屏显示 document.querySelector("#btn1").addEventListener("click", function () { var divObj = document.querySelector("div"); if (divObj.requestFullscreen) { divObj.requestFullscreen(); } else if (divObj.webkitRequestFullScreen) { divObj.webkitRequestFullScreen(); } else if (divObj.mozRequestFullScreen) { divObj.mozRequestFullScreen(); } else if (divObj.msRequestFullScreen) { divObj.msRequestFullScreen(); } }, false); // 退出全屏显示 document.querySelector("#btn2").addEventListener("click", function () { if (document.cancelFullscreen) { document.cancelFullscreen(); } else if (document.webkitCancelFullScreen) { document.webkitCancelFullScreen(); } else if (document.mozCancelFullScreen) { document.mozCancelFullScreen(); } else if (document.msCancelFullScreen) { document.msCancelFullScreen(); } }, false); // 是否是全屏状态 document.querySelector("#btn3").addEventListener("click", function () { if (document.fullscreenElement || document.webkitFullscreenElement || document.mozFullScreenElement || document.msFullscreenElement) { console.log("yes"); } else { console.log("no"); } }, false); </script> </body> </html> 三、应用程序缓存

主要应用在:当离线模式下,页面需要选择性缓存一些内容的时候。

<!DOCTYPE html> <!--manifest="应用程序缓存清单文件的路径 建议文件的扩展名是appcache,这个文件的本质就是一个文本文件"--> <html lang="en" manifest="demo.appcache"> <head> <meta charset="UTF-8"> <title>Title</title> <style> img{ width: 300px; display: block; } </style> </head> <body> <img src="" alt=""> <img src="" alt=""> <img src="" alt=""> <img src="" alt=""> </body> </html>

demo.appcache 文件

CACHE MANIFEST #上面一句代码必须是当前文档的第一句 #后面写注释 #需要缓存的文件清单列表 CACHE: #下面就是需要缓存的清单列表 ../images/l1.jpg ../images/l2.jpg # *:代表所有文件 #配置每一次都需要重新从服务器获取的文件清单列表 NETWORK: ../images/l3.jpg #配置如果文件无法获取则使用指定的文件进行替代 FALLBACK: ../images/l4.jpg ../images/banner_1.jpg # /:代表所有文件 四、文件读取接口

FileReader:主要是读取文件内容。

使用 new FileReader 生成的对象有下列几个方法,用于读取文件:

readAsText():读取文本文件,返回文本字符串,默认编码是UTF-8

readAsBinaryString():读取任意类型的文件,返回二进制字符串。这个方法不是用来读取文件展示给用户看,而是存储文件。例如:读取文件的内容,获取二进制数据,传递给后台,后台接收了数据之后,再将数据存储。

readAsDataURL():读取文件获取一段以data开头的字符串,这段字符串的本质就是DataURL。

DataURL是一种将文件(这个文件一般就是指图像或者能够嵌入到文档的文件格式)嵌入到文档的一种格式。DataURL是将资源转换为base64编码的字符串形式,并且将这些内容直接存储在url中,这样做可以优化网站的加载速度和执行效率。

abort():中断文件读取。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zywdyw.html