在百度地图上实现鼠标滑过marker时打开自定义的信息窗口,当鼠标滑出marker时关闭已打开的信息窗口。
首先,需要在地图上添加一个marker,具体如下所示:
$.ajax({
async:false,
cache:true,
url: "获取位置信息的接口",
type: 'GET',
success: function(result){
if(result != undefined && result.length >0){
map.centerAndZoom(new BMap.Point(result[0].longitude, result[0].latitude));
var longitude = [], latitude = [];
for (var i = 0; i < result.length; i++) {
longitude[i] = result[i].longitude;
latitude[i] = result[i].latitude;
var steelMarker = new BMap.Marker(new BMap.Point(longitude[i],latitude[i]), {title:"钢材"}, {icon:new BMap.Icon("myCar.png", new BMap.Size(25, 20))});
map.addOverlay(steelMarker); //将标注添加到地图中
}
}
},
error:function(e){
//alert("获取信息失败");
}
});
添加marker以后,就可以实现鼠标滑过marker时打开自定义信息窗口的事件了。
百度地图的marker有一个addEventListener()事件,具体为:addEventListener(event: String, handler: Function),即给marker添加事件监听函数。marker添加的监听事件包括:
事件 | 参数 | 描述 |
click | event{type, target} | 点击标注图标后会触发此事件 |
dblclick | event{type, t |