更新时间:2022年08月17日09时49分 来源:传智教育 浏览次数:
地理位置一般是用来描述地理事物的空间关系。通常情况下,用经纬度可以准确地描述地理位置。而通常所说的地理定位也是找到该地理位置的经纬度作为坐标来进行定位的。在PC端,通常使用IP来定位该IP用户的位置,移动端定位有多种方式,最准确的是GPS。
Geolocation API的使用非常简单,navigator.geolocation对象提供了可以公开访问地理位置的方法,其中navigator为浏览器内置对象。检测浏览器是否支持定位API,只需要检测geolocation是否存在于navigator中即可。对于移动Web开发者,大多数情况只需要获取用户的当前位置,此时可以使用getCurrentPosition()方法来获取当前位置的坐标值。get-CurrentPosition()被调用时会发起一个异步请求,浏览器会调用系统底层的硬件(如GPS)来更新当前的位置信息,当信息获取到之后会在回调函数中传入position对象。
position对象包含两个属性:一个是coords(坐标),它是一个Coordiante对象,包含当前位置信息;另一个是timestamp,表示获取到位置的时间戳。
coordiante对象包含包括经纬度在内的一系列信息,具体如下:
(1)latitude:一个十进制表示的纬度坐标。
(2)longitude:一个十进制表示经度的坐标。
(3)altitude:海拔高度(以米为单位,如果是5,表示精确到5m范围)。
(4)accuracy:当前经纬度信息的精度(以米为单位)。
(5)altitudeAccuracy:当前海拔高度的精度。
(6)heading:代表当前设备的朝向,该值是以弧度为单位,指示了按顺时针方向相对于正北的度数(例如:heading为270时表示正西方)。