地理位置 API

js获取地理位置的接口navigator.geolocation

geolocation对象有三个方法

1.getCurrentPosition

2.watchPosition

3.clearWatch

一.getCurrentPosition方法用于获取用户的地理位置

格式:getCurrentPosition(callback,[callback],[option])

第一个callback函数,用来处理成功获取用户地理位置的情况

  函数会被传入一个对象,该对象保存了有关本次定位的具体信息

  该对象包含两个属性

  timestamp 保存了获取位置时的时间戳

  croods 也是一个对象,保存了具体的位置信息

  coords.latitude:纬度
  coords.longitude:经度
  coords.altitude:高度
  coords.accuracy:所提供的以米为单位的经度和纬度估计的精确度
  coords.altitudeAccuracy:所提供的以米为单位的高度估计的精确度
  coords.heading: 移动的角度方向,相对于正北方向顺时针计算
  coords.speed:以米每秒为单位的设备的当前对地速度

  

第二个callback函数,用来处理获取位置失败的情况

  该函数也会被传入一个对象 包含了具体的错误信息

  该对象包含两个属性

  code 保存了错误的原因 值为1,2,3

    1代表没有权限

    2代表无法定位

    3超时

  message 保存了额外的错误信息

option 对象来决定定位的细节

  option对象有三个属性可以来描述定位的具体细节

  enableHighAccuracy 默认为false 设置为true可以开启更精准的定位,同时也会增加响应时间

  timeout 设定超时时间 单位为毫秒 默认无限大 设置负数 会变为0

  maximumAge 地理位置的缓存时间 默认为0 设置负数也为0

二.watchPosition

  watchPosition的调用格式同等于getCurrentPosition,只不过watchPosition是不断的获取位置

  调用watchPosition会返回一个值,把该值传入clearWatch即可停止轮询

  定位失败一次,也会导致watchPosition停止,然后调用第二个callback来处理错误

三.权限

  是否能正常使用该API,取决于用户的选择,位置信息往往属于用户的隐私,浏览器在使用定位时

  通常会向用户询问,如果用户拒绝,那么定义处理失败的回调函数是很有必要的

上一篇:MySQL字符串类型


下一篇:FreeSql 新功能介绍:贪婪加载五种方法