这个API得到了广泛的支持,并且使用得很多,所以还是很有必要学一下。使用地理定位API的时候会在浏览器弹出提示,让用户来决定是否允许访问地理信息
它在浏览器中的实现是navigator.geolocation
,这个对象包括三个方法。
getCurrentPosition()
: 获取当前的位置信息,接受三个参数- 成功的回调函数: 接受一个
position
对象,包括coords、timestamp
两个属性,其中的coords
属性包括以下属性:latitude
: 纬度longitude
: 经度accuracy
: 经纬度坐标的精度,以米为单位altitude
: 以米为单位的海拔高度altitudeAccuraxy
: 海拔高度的精度,以米为单位heading
: 指南针方向,0表示正北speed
: 速度,每秒移动多少米
- 失败的回调函数: 也会接受一个对象, 包含连个属性:
- message: 错误的文本信息
- code: 错误类型,
1
拒绝共享、2
位置无效、3
超时
- 可选的选项对象: 有三个 属性
enableHighAccuracy
: 表示尽可能的使用非常准确的值,但是不建议使用,除非的确需要获取非常准确的值,因为它需要更多的时间,而且在移动设备上很耗电timeout
: 毫秒为单位,表示等待位置信息的最长时间maximumAge
: 表示自从上一次获取位置开始的多长时间内不再获取坐标,直接使用上一次的
- 成功的回调函数: 接受一个
watchPosition()
: 接受的参数和上面一样,表示跟踪用户的位置,与定时调用上面的方法效果相同。它会返回一个数值标识,用来取消监控操作,类似于定时器。