Uncaught TypeError: b.ha(…).nb is not a function
在百度 js API开发过程中,需要创建多点,并分贝给每个店添加事件监听,弹出信息框,但是,以下代码只能往地图中添加标注,却无法弹框。
var point = {lng : kpresult[i].position[0],lat : kpresult[i].position[1],};
var marker = new BMap.Marker(point,{icon:myIcon}); // 创建标注
bmap.addOverlay(marker); // 将标注添加到地图中
addClickHandler(content,marker);
function openInfo(content, point) {
var infoWindow = new BMap.InfoWindow(content); // 创建信息窗口对象
bmap.openInfoWindow(infoWindow, point); // 开启信息窗口
}
function addClickHandler(content,marker){
marker.addEventListener("click",function(e){
console.log("e:"+e);
var p = e.target;
var point = new BMap.Point(p.getPosition().lng, p.getPosition().lat);
openInfo(content,point);
}
);
}
调试错误,出现
Uncaught TypeError: b.ha(...).nb is not a function at HTMLSpanElement.eval (eval at yZ (getscript:1), <anonymous>:1:1279);
这个错误,是由于
var point = {lng : kpresult[i].position[0],lat : kpresult[i].position[1],};
在百度API中,应该用百度Point。
var point = new BMap.Point(kpresult[i].position[0],kpresult[i].position[1]);