Android百度搜索地名跳转,移动端调用百度地图的时候,怎样可以获取到所点击的位置具体地名呢,(如xx餐厅),现在只能精确到街道...

移动端调用百度地图的时候,怎样可以获取到所点击的位置具体地名呢,(如xx餐厅),现在只能精确到街道

var map = new BMap.Map("map-cont",{minZoom:5,maxZoom:30}); // 创建Map实例

map.centerAndZoom(new BMap.Point(113.204, 22.239), 19); // 初始化地图,设置中心点坐标和地图级别

map.addControl(new BMap.MapTypeControl()); //添加地图类型控件

map.setCurrentCity("珠海"); // 设置地图显示的城市 此项是必须设置的

map.enableScrollWheelZoom(true);

/*/*新增*/

var geolocation = new BMap.Geolocation();

var go_to=document.getElementById('pos');

go_to.style.display='none'

geolocation.getCurrentPosition(function(r){

if(this.getStatus() == BMAP_STATUS_SUCCESS){

var mk = new BMap.Marker(r.point);

map.addOverlay(mk);

var pointA,pointB;

pointA=new BMap.Point(r.point.lng+','+r.point.lat)

var latCurrent=r.point.lat;

var lngCurrent=r.point.lng;

map.addEventListener('click',function(e){

/*清空折线*/

map.clearOverlays()

go_to.style.display='block'

pointB=new BMap.Point(e.point.lng,e.point.lat);

//获取两点距离,不保留小数点

var distance='距离'+(map.getDistance(pointA,pointB)).toFixed(0)+'米'

var marker = new BMap.Marker(pointB);// 创建标注

map.addOverlay(marker);

/*获取当前城市信息*/

geocodeSearch(pointB,distance)

// (113.204072,22.239358)

console.log("22.240006,113.204373")

go_to.addEventListener('click',function(){

window.open("http://api.map.baidu.com/direction?origin="+latCurrent+","+lngCurrent+"&destination="+e.point.lat+","+e.point.lng+"&mode=driving&region=珠海&output=html",'_target')

})

})

}else{

alert('failed'+this.getStatus());

}

/*获取点击的地理信息*/

function geocodeSearch(pt,distance) {

var myGeo = new BMap.Geocoder();

myGeo.getLocation(pt, function (rs) {

var addComp = rs.addressComponents;

var pos=addComp.city+ addComp.district+addComp.street+addComp.streetNumber;

document.getElementById('pos-cot').innerHTML=pos;

document.getElementById("meter").innerHTML=distance;

});

}

},{enableHighAccuracy: true});

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值