現在bounds_changed
、マーカーオーバーレイをクリアしてから、マップ境界内にマーカーを再作成しているリスナーがいます。
ただし、マーカーがクリックされてマップが移動しても、情報ウィンドウは表示されません。拭き取ったので。clearOverlays
マーカーのクリックが行われたかどうかを検出し、行われた場合は他に何もしないifステートメントを次のように追加するにはどうすればよいですか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); });