获取本地位置navigator和本地存储localstorage/sessionstorage

一、地理位置

navigator.geolocation

【单次定位请求】 :getCurrentPosition(请求成功,请求失败,数据收集方式)

参数:
  • 1、请求成功函数
    经度 : coords.longitude
    纬度 : coords.latitude
    准确度 : coords.accuracy
    海拔 : coords.altitude
    海拔准确度 : coords.altitudeAcuracy
    行进方向 : coords.heading
    地面速度 : coords.speed
    时间戳 : new Date(position.timestamp)

  • 2、请求失败函数
    失败编号 :code
    0 : 不包括其他错误编号中的错误
    1 : 用户拒绝浏览器获取位置信息
    2 : 尝试获取用户信息,但失败了
    3 : 设置了timeout值,获取位置超时了

  • 3、数据收集 : json的形式
    enableHighAcuracy : 更精确的查找,默认false
    timeout : 获取位置允许最长时间,默认infinity
    maximumAge : 位置可以缓存的最大时间,默认0

  • 监听信息
    多次定位请求【如果位置不停在改变,就需要多次请求】 . watchPosition(像setInterval)
    移动设备有用,位置改变才会触发
    配置参数:frequency 更新的频率

关闭更新请求 . clearWatch(像clearInterval)
eg:

navigator.geolocation.watchPosition(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.altitudeAcuracy +'
'; box.innerHTML += '行进方向:'+position.coords.heading +'
'; box.innerHTML += '地面速度:'+position.coords.speed +'
'; box.innerHTML += '时间戳:'+new Date(position.timestamp)+'
'; },function(err){ //alert( err.code ); navigator.geolocation.clearWatch(timer); },{ enableHighAcuracy : true, timeout : 6000, maximumAge : 5000, frequency : 1000 });

2、本地存储

Storage

  • 1、sessionStorage
    session临时回话,从页面打开到页面关闭的时间段
    窗口的临时存储,页面关闭,本地存储消失
  • 2、localStorage
    永久存储(可以手动删除数据)
  • 3、Storage的特点
    存储量限制 ( 5M )
    客户端完成,不会请求服务器处理
    sessionStorage数据是不共享、 localStorage共享

Storage API:

  • 【1】setItem():
    设置数据,key\value类型,类型都是字符串
    可以用获取属性的形式操作
  • 【2】getItem():
    获取数据,通过key来获取到相应的value
  • 【3】removeItem():
    删除数据,通过key来删除相应的value
  • 【4】clear():
    删除全部存储的值
  • 【5】存储事件:
    当数据有修改或删除的情况下,就会触发storage事件
    在对数据进行改变的窗口对象上是不会触发的
    Key : 修改或删除的key值,如果调用clear(),key为null
    newValue : 新设置的值,如果调用removeStorage(),key为null
    oldValue : 调用改变前的value值
    storageArea : 当前的storage对象
    url : 触发该脚本变化的文档的url
    注:session同窗口才可以,例子:iframe操作
    eg:
  • 浏览器关闭设置并使用

        

  • 设置获取和删除

        
        
        
        

        
    

  • 监听,storage改变时触发

        
        
        
        
        

你可能感兴趣的:(获取本地位置navigator和本地存储localstorage/sessionstorage)