使用html5获取当前手机的经纬度,并接入百度地图API,查询出当前位置
来源:互联网 发布:性别歧视 知乎 编辑:程序博客网 时间:2024/06/05 17:36
最近项目需要,稍微研究一下html5获取当前地理位置的问题。
获取当前位置的经纬度很简单,一句代码就搞定
- navigator.geolocation.getCurrentPosition(function (position) {
- longitude = position.coords.longitude;
- latitude = position.coords.latitude;
- });
然后查阅百度地图API,很easy,也是几句代码就搞定的事
- var map = new BMap.Map("allmap");<pre name="code" class="javascript"> var point = new BMap.Point(longitude,latitude);<pre name="code" class="javascript"> var geoc = new BMap.Geocoder();
- geoc.getLocation(point, function(rs){
- var addComp = rs.addressComponents;
- alert(addComp.province + ", " + addComp.city + ", " + addComp.district + ", " + addComp.street + ", " + addComp.streetNumber);
- });
好的,本以为到此结束,结果实际测试发现有点问题,显示的位置与我的真正位置偏差大约两三公里左右。
一开始以为是html5获取经纬度的偏差问题,然而并不是
然后开始查资料,求助强大的度娘,然后无意中发现了一个叫做 坐标转换 的东西,一搜索才知道,原来百度地图对坐标进行了深度封装,必须通过他提供的接口进行坐标转换才行
(当然了,还是因为我以前没接触过百度地图,所以不知道这点知识,常用百度地图api的应该对这个很熟悉的吧)
好了,废话不多说,上最终代码吧
- var map = new BMap.Map("allmap");
- var longitude, latitude;
- navigator.geolocation.getCurrentPosition(function (position) {
- longitude = position.coords.longitude;
- latitude = position.coords.latitude;
- });
- setTimeout(function () {
- var gpsPoint = new BMap.Point(longitude, latitude);
- BMap.Convertor.translate(gpsPoint, 0, function (point) {
- var geoc = new BMap.Geocoder();
- geoc.getLocation(point, function (rs) {
- var addComp = rs.addressComponents;
- alert(addComp.province + ", " + addComp.city + ", " + addComp.district + ", " + addComp.street + ", " + addComp.streetNumber);
- });
- });
- }, 3000);
- <script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=秘钥"></script>
- <script type="text/javascript" src="http://developer.baidu.com/map/jsdemo/demo/convertor.js"></script>
0 0
- 使用html5获取当前手机的经纬度,并接入百度地图API,查询出当前位置
- 使用html5获取当前手机的经纬度,并接入百度地图API,查询出当前位置
- 百度地图最新版本sdk使用系列(八)-获取当前地图中心点的经纬度并计算与当前位置的距离
- 百度地图api 获取当前位置经纬度。自驾俩点间的路线。
- HTML5页面调用百度地图API,获取当前位置并导航到目的地
- Android百度地图API获取当前位置和当前城市
- android使用百度地图获取当前经纬度
- 百度地图api开发二:获取当前地图中心经纬度
- 百度地图 JavaScript API 2.0 获取当前位置并导航实例
- 使用百度地图API获取经纬度
- 02 使用百度地图获得当前位置的经纬度
- 百度地图api--拖动地图显示经纬度与显示当前位置
- Html5结合百度地图获取当前位置
- 地图应用之 :获取当前位置的经纬度
- 获取当前位置并利用百度地图显示
- 【经验小谈】百度定位api使用 百度定位demo 百度地图快速定位 百度地图获取当前位置 获取自己的位置 百度定位示例
- 【微信开发】-HTML5页面直接调用百度地图API,获取当前位置,直接导航目的地
- 【微信开发】-HTML5页面直接调用百度地图API,获取当前位置,直接导航目的地
- JavaScript中原型对象的彻底理解
- 预留待补
- sql sever 2012express安装教程
- c++primer plus 第七章 函数
- 数据库连接池的优点
- 使用html5获取当前手机的经纬度,并接入百度地图API,查询出当前位置
- vsflexgrid+打印整理后的方法
- 手把手教你写电商爬虫-第二课 实战尚妆网分页商品采集爬虫
- Android java 实现自己线程池
- 使用Subversion版本控制工具
- myeclipse闪退的问题
- sqli-labs学习教程(七)
- 手把手教你写电商爬虫-第三课 实战尚妆网AJAX请求处理和内容提取
- Codeforces 768A Oath of the Night's Watch