您当前的位置: 首页 > 

漏刻有时

暂无认证

  • 0浏览

    0关注

    717博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

H5地理定位navigator.geolocation的使用(获取经纬度、海拔高度等设备信息)

漏刻有时 发布时间:2021-12-10 10:53:19 ,浏览量:0

navigator.geolocation定位说明
  1. getCurrentPosition,需要https加密SSL证书支持,http服务协议逐步启用;
  2. 使用PC端浏览器,部分返回的值是无法正常显示,为NULL;
H5定位代码
navigator.geolocation.getCurrentPosition(function (position) {
       console.log(position);
    }, function (err) {
        console.log(err.code);
    }, {
        enableHighAcuracy: true, //位置是否精确获取
        timeout: 5000,//获取位置允许的最长时间
        maximumAge: 0 //多久更新获取一次位置
    })
代码分析 getCurrentPosition()返回说明
  1. coords.latitude:估计纬度
  2. coords.longitude:估计经度
  3. coords.altitude:估计高度
  4. coords.accuracy:所提供的以米为单位的经度和纬度估计的精确度
  5. coords.altitudeAccuracy:所提供的以米为单位的高度估计的精确度
  6. coords.heading: 宿主设备当前移动的角度方向,相对于正北方向顺时针计算
  7. coords.speed:以米每秒为单位的设备的当前对地速度
errorCallback 定位失败时执行的回调函数
    //code:返回获取位置的状态
    //0:不包括其他错误编号中的错误
    //1:用户拒绝浏览器获取位置信息
    //2:尝试获取用户信息,但失败了
    //3:设置了timeout值,获取位置超时了
positionOptions配置项
  • enableHighAccuracy 【true or false(默认)】是否返回更详细更准确的结构,默认为false不启用,选择true则启用,但是会导致较长的响应时间及增加功耗,这种情况更多的用在移动设备上。

  • timeout 设备位置获取操作的超时时间设定(不包括获取用户权限时间),单位为毫秒,如果在设定的timeout时间内未能获取位置定位,则会执行errorCallback()返回code(3)。如果未设定timeout,那么timeout默认为无穷大,如果timeout为负数,则默认timeout为0。

  • maximumAge 设定位置缓存时间,以毫秒为单位,如果不设置该值,该值默认为0,如果设定负数,则默认为0。该值为0时,位置定位时会重新获取一个新的位置对象;该值大于0时,即从上一次获取位置时开始,缓存位置对象,如果再次获取位置时间不超过maximumAge,则返回缓存中的位置,如果超出maximumAge,则重新获取一个新的位置。

@lockdata.cn

关注
打赏
1661217259
查看更多评论
立即登录/注册

微信扫码登录

0.0873s