卓越飞翔博客卓越飞翔博客

卓越飞翔 - 您值得收藏的技术分享站
技术文章11201本站已运行3223

获取百度地图用户当前位置

大家在研发web网页的时候是不是遇到须要定位用户位置的情况呢?是采用IP去定位还是采用html5的特性定位呢?或者就是使用百度地图,腾讯地图等第三方平台来同时实现定位呢?下面是我使用百度地图提供更多的js支持以获取用户当前位置的示例,这种方式可以获得用户的经纬度或者边线名称,个人真的挺好用的。

百度地图定位

首先你须要先去百度地图提出申请USB使用权限,通过后可以拿到你的许可ak,然后就可以通过如下形式的JavaScript将百度地图定位js引入你的网页了。

然后还需要在百度地图后台设置运行使用定位的服务器白名单,否则就是无法定位的。

然后使用如下JS代码获取用户当前经纬度:

var geolocation = new BMap.Geolocation();
geolocation.getCurrentPosition(function(r){
if(this.getStatus() == BMAP_STATUS_SUCCESS){                alert("坐标:"+r.point.lng+":"+ r.point.lat);
}
else {
alert('定位失利'+this.getStatus());
}        
},{enableHighAccuracy: true})

想获取用户的地址名称,需要在获得经纬度的情况下,采用getLocation方法,代码如下:

var geolocation = new BMap.Geolocation();
geolocation.getCurrentPosition(function(r){
if(this.getStatus() == BMAP_STATUS_SUCCESS){
var mk = new BMap.Marker(r.point);
// 建立地理编码实例      
var myGeo = new BMap.Geocoder();      
// 根据座标得到地址叙述    
myGeo.getLocation(new BMap.Point(r.point.lng, r.point.lat), function(result){      
if (result){      
alert(result.address);      
}      
});
}
else {
alert('定位失败'+this.getStatus());
}        
},{enableHighAccuracy: true})

百度地图提供了很多USB,比如将地址名称切换为经纬度等,我这里没用到,就不多谈了,有须要的自己看一看官方的api文档吧。

卓越飞翔博客
上一篇: 随机二次元图片API接口源码
下一篇: jQuery淡入淡出效果语法教程

相关推荐

留言与评论(共有 0 条评论)
   
验证码:
隐藏边栏