目前我有一个bounds_changed
侦听器,它正在清除标记叠加层,然后在地图边界内重新创建标记。
但是,无论何时单击标记并且地图移动,信息窗口都不会显示。因为它已经消失了。如何在以下内容中添加if语句,以检测标记上的点击是否已完成,如果是,则执行其他操作clearOverlays
和createMarkers
。
google.maps.event.addListener(map, 'bounds_changed', function() {
//alert(map.getBounds());
clearOverlays();
createMarkers(map, mgr);
});
例如
if(marker.click) {
} else {
clearOverlays();
createMarkers(map, mgr);
}
最终工作代码。
google.maps.event.addListener(map, 'bounds_changed', function() {
if(checkevent == false)
{
//alert(checkevent);
clearOverlays();
createMarkers(map, mgr);
}
});
并在标记的监听器中单击
google.maps.event.addListener(marker5, 'click', function() { checkevent = true; infowindow5.open(map,marker5); setTimeout('checkevent = false', 3000); });
答案 0 :(得分:2)
假设您有一个标记点击事件的监听器,请在外部设置一个状态变量到事件监听器。在bounds_changed侦听器中,检查状态变量。始终在bound_changed侦听器的末尾重置状态变量。