【设备】地理定位(Geolocation)

  • 2019 年 11 月 26 日
  • 笔记

概述

地理定位(Geolocation) API 是通过navigator的geolocation属性来实现的,geolocation对象用于用户向Web应用程序提供他们的位置。因为隐私,报告地理位置前需要先请求用户许可。

代码示例

浏览器支持检测

if(window.navigator && window.navigator.geolocation) {     //支持此API } else {     /不支持此API }

以上代码通过以下代码可以事先检测浏览器是否支持本API。

获取当前位置

通过getCurrentPosition()方法可以获得用户当前的位置。方法会异步请求获取位置,并查询定位硬件来获取最新信息。

navigator.geolocation.getCurrentPosition(function(position) {     //获取位置后}

监听位置变化

通过watchPosition()方法可设定一个回调函数来监听用户位置的变换化,该方法的参数与getCurrentPosition()相同。

var watchID = navigator.geelocation.watchPosition(function(position) {     //....... }

watchPosition()方法会返回一个ID,可将ID传给clearWatch()方法来停止监视用户位置。

navigator.geolocation.clearWatch(watchID);