Google Maps API v2では、すべてのマップマーカーを削除したい場合、単純に次のようにできました。
map.clearOverlays();
Google Maps API v3ではどのようにすればよいでしょうか?
Reference API]1を見ても、'よくわかりません。
V3にはまだそのような機能はないようです。
マップ上にあるすべてのマーカーへの参照を配列にしておくといいと言われています。そして、すべてのマーカーを削除したいときには、配列をループさせて、それぞれの参照に対して.setMap(null)メソッドを呼び出すだけです。
詳細/コードについてはこの質問を参照。
私のバージョンです。
google.maps.Map.prototype.markers = new Array(); google.maps.Map.prototype.getMarkers = function() { return this.markers }; google.maps.Map.prototype.clearMarkers = function() { for(var i=0; i
google.maps.Map.prototype.markers = new Array(); google.maps.Map.prototype.addMarker = function(marker) { this.markers[this.markers.length] = marker; }; google.maps.Map.prototype.getMarkers = function() { return this.markers }; google.maps.Map.prototype.clearMarkers = function() { for(var i=0; i
両方の回答に掲載されている"set_map"関数は、Google Maps v3 APIでは動作しなくなっているようです。
set_map
何が起こったのでしょうか?
更新情報:
GoogleがAPIを変更したため、"set_map"が"setMap"ではなくなったようです。
setMap
http://code.google.com/apis/maps/documentation/v3/reference.html
V3にはまだそのような機能はないようです。
マップ上にあるすべてのマーカーへの参照を配列にしておくといいと言われています。そして、すべてのマーカーを削除したいときには、配列をループさせて、それぞれの参照に対して.setMap(null)メソッドを呼び出すだけです。
詳細/コードについてはこの質問を参照。
私のバージョンです。
両方の回答に掲載されている"
set_map
"関数は、Google Maps v3 APIでは動作しなくなっているようです。何が起こったのでしょうか?
更新情報:
GoogleがAPIを変更したため、"
set_map
"が"setMap
"ではなくなったようです。http://code.google.com/apis/maps/documentation/v3/reference.html