地理信息:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<style>
#box{
width:500px;
height:500px;
border: 2px solid deeppink;
}
</style>
</head>
<body>
<button id="btn">请求位置信息</button>
<div id="box"></div>
<script>
let btn = document.getElementById('btn');
let box = document.getElementById('box');
btn.onclick = function(){
//getCurrentPosition与定时器setInterval类似多次请求,因为位置需要不间断的获取
//直接navigator.geolocation表示单次获取位置
navigator.geolocation.getCurrentPosition(function (position){
box.innerHTML += "经度" + position.coords.longitude;
box.innerHTML += "纬度" + position.coords.latitude;
box.innerHTML += "准确度" + position.coords.accuracy;
box.innerHTML += "海拔" + position.coords.altitude;
box.innerHTML += "海拔准确度" + position.coords.altitudeAccuracy;
box.innerHTML += "行进方向" + position.coords.heading;
box.innerHTML += "地面速度" + position.coords.speed;
box.innerHTML += "请求时间" + new Date(position.timestamp);
}, function(err){
alert(err.code);
//code:返回获取位置的状态码
// 0 : 不包括其他错误编号中的错误
// 1 : 用户拒绝浏览器获取位置信息
// 2 : 尝试获取用户信息,但失败了
// 3 : 设置了timeout值,获取位置超时了
},{
enableHighAccuracy: false, //位置是否精确获取
timeout: 5000, //获取位置允许的最长时间
maximumAge: 1000 //多久更新获取一次位置
});
}
</script>
</body>
</html>
web存储:
离线缓存:
注意:
离线缓存是针对应用程序的,所以要将测试页面发布到server上面才可以,可以用VSCode的live server插件来实现。
需要新建一个文件 cache.appcache,文件后缀名必须为appcache。
CACHE MANIFEST
# 2020-03-04 V1.0.0
CACHE:
./cache.css
./cache.js
NETWORK:
login.php
FALLBACK:
/html5/
在html节点中添加属性 manifest=”cache.appcache”
html示例代码:
注意:
<!DOCTYPE html>
<html lang="en" manifest="cache.appcache">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<script type="text/javascript" src="./cache.js"></script>
<link rel="stylesheet" href="./cache.css"/>
</head>
<body>
<div>
Hello
</div>
</body>
</html>
如果不用离线缓存的话,应用程序所需的资源每次都会下载,而使用了离线缓存,则根据manifest文件进行存储设置,如果一个资源被设置为缓存,则下次访问时会从本地磁盘读取。
注意: disk cache