百度地图api如何自动获得第一个被标记的坐标前提是多个标注

2025-04-13 07:03:59
推荐回答(1个)
回答1:

你可以在search方法中设定自动制定第一个标注:
//地点搜索
function serachlocal(){
var local = new BMap.LocalSearch(map, {
renderOptions: {
map: map,
panel: "results",//结果容器id
autoViewport: true, //自动结果标注
selectFirstResult: true , //指定到第一个目标
enableRouteSearchBox: true,
enableRouteInfo:true
},
pageCapacity: 4
});
local.search(document.getElementById("searchtext").value);
}

也可以在查询完毕的回调函数中手动获取查询出来的点坐标:
//查询完毕的回调函数
var searchComplete = function (results){
if (local.getStatus() != BMAP_STATUS_SUCCESS){
return ;
}
var s=[];
for(var cnt=0; cnt < results.getCurrentNumPois(); cnt++){
var point = results.getPoi(cnt);
addMarker(results,point,cnt);
s.push(results.getPoi(cnt).title + ", " + results.getPoi(cnt).address);
document.getElementById("results").innerHTML = s.join("
");
}
}