在页面中想要展示的页面中使用百度地图的API十分的简单而且是十分有用的。下面先介绍一些HTML5中地理位置的一些知识。
地理位置
(Geolocation)是HTML5中重要的特性之一。提供了确定用户位置的功能,借助这个特性能够开发基于位置信息的应用,使得开发人员不用借助其他软件就能轻松实现位置查找,地图应用,导航等功能。
Geolocation的基本原理
1. GPS
GPS基本原理是测量出已知位置的卫星到用户接收机之间的距离,然后综合多颗卫星的数据就可知道接收机的具体位置。适用于具备GPS功能的设备
优点
:在空旷地区比较准确,覆盖面比较广
缺点
:需要比较长时间定位,比较耗电池,在室内不太好,需要
GPS设备支持
2. WIFI
地理定位服务提供者会在全世界范围内去收集WIFI热点的位置信息,然后用户的设备只要能支持WIFI就能获取到周围WIFI热点的位置和信号强弱信息,然 后把这些信息发给提供者,就能得到自己的位置.
优点
:比较准确,适用于室内环境,相应速度快
缺点
:在wifi热点少的地方不适用
3. IP定位
原理很简单,就是通过你设备的物理地址所备案的地址信息来定位,但这种方式精确度不高,特别是用代理来
上网的情况下。一般作为GPS和WIFI都不支持的情况下大致模糊匹配,比如各大团购网站检测用户所在城市
4. 手机基站
和WIFI原理类似,Apple的设备就是把WIFI和基站信息结合起来进行定位。
实现
1. 核心对象
①Geolocation
是window.navigator
下面的一个对象,该对象提供了实现地理位置定位的接口。
②要用该功能首先判断浏览器是否支持navigator.geolocation该
对象。
2. Geolocation对象详解
getCurrentPosition(success,error,options)该方法是实现地理定位的核心方法,该方法能够对获取到的信息作出处理以及设置。
A.success(position) 获取信息成功的回调函数
B.error(errorcode)获取信息失败的回调函数
C.options获取信息前可以按照你的需求来设置一些参数
success(positon) 获取信息成功的回调函数
当成功获得信息的时候,会自动调用success函数,而这个函数会自动生成一个包含返回地理信息的position
对象,如下:
A.coords.latitude(纬度)
B.coords.longitude(经度)
C.coords.altitude(海拔)
D.coords.accuracy(位置精确度)
E.coords.altitudeAccuracy(海拔精确度)
F.coords.heading(朝向)
G.coords.speed (速度)
H.timestamp(响应的日期/时间)
error(errorCode)获取对象失败的回调函数
A. 地理