在HTML5中,为window.navigator对象新增了一个geolocation属性,可以使用Geolocation API来对该属性进行访问,该属性存在以下三个方法。
- 获取当前地理位置
void getCurrentPosition(onSuccess, onError, options);
- onSuccess - 获取当前地理位置成功时的回调函数
它的参数是一个position对象,position对象具有latitude、longitude 以及 accuracy 属性,如果可用还会有扩展属性:属性 描述 coords.latitude 十进制数的纬度 coords.longitude 十进制数的经度 coords.accuracy 位置精度 coords.altitude 海拔,海平面以上以米计 coords.altitudeAccuracy 位置的海拔精度 coords.heading 方向,从正北开始以度计 coords.speed 速度,以米/每秒计 timestamp 响应的日期/时间 -
onError - 获取当前地理位置失败时的回调函数,它的参数是error对象,error两个属性:
code:1 用户拒绝了位置服务,2 获取不到位置信息,3 获取信息超时错误;
message,错误信息。 -
options - 可选的参数列表,可选属性如下:
enableHightAccuracy,是否要求高精度的地理位置信息;
timeout,对地理位置信息的获取操作作一个超时限制;
maximumAge,对地理位置信息进行缓存的有效时间;
window.navigator.geolocation.getCurrentPosition( function(pos){ alert(pos.coords.latitude); }, function(err){ alert(err.message); })
- onSuccess - 获取当前地理位置成功时的回调函数
- 持续监视当前地理位置
int watchPosition(onSuccess, onError, options)
- 停止获取地理位置信息
void clearWatch(watchId);