调用百度地图API进行当前位置定位失败解决方法
有时候,我们在调用百度地图API进行地图设计时,总是会遇到当前位置定位失败,但是代码没有错误,但依旧报错或是定不了位。
解决方法:需要调整代码方法顺序
如下我们将位置定位的方法代码调整至创建地图方法之前
// 位置定位
var geolocation = new BMap.Geolocation();
geolocation.getCurrentPosition(function(r){
if(this.getStatus() == BMAP_STATUS_SUCCESS){
var mk = new BMap.Marker(r.point);
map.addOverlay(mk);
map.panTo(r.point);
}else {
alert('failed'+this.getStatus());
}
},{enableHighAccuracy: true})
//创建和初始化地图函数:
function initMap(){
createMap();//创建地图
setMapEvent();//设置地图事件
addMapControl();//向地图添加控件
addMapOverlay();//向地图添加覆盖物
}
function createMap(){
map = new BMap.Map("map");
map.centerAndZoom(new BMap.Point(104.072745,30.578994),15);
map.enableScrollWheelZoom(true);
map.setZoom(17);
}