Googleマップから個々のマーカーを削除します。私はバージョン3 APIを使用しています。 markerArray
を維持し、すべてのマップをnullに設定することによって、すべてのマーカーを削除する方法を知っています。Googleマップから個々のマーカーを削除する - API v3
1つずつ削除する場合は、キー値のペアの組み合わせを考えています。私はキーを与え、特定のマーカーを削除するように。私はこれ以上の助けが必要です。続き
は、私はドラムのマーカーに使用すること、コードです:
function geoCodeAddresses(data) {
var markerInfo = {addressKey: '', marker:''};
for (var i = 0; i < data.length; i++) {
myLocation = data[i];
geocoder.geocode({"address":myLocation}, function (results, status) {
if (status == google.maps.GeocoderStatus.OK) {
map.setCenter(results[0].geometry.location);
var marker = new google.maps.Marker({map:map, position:results[0].geometry.location});
// checkpoint A
alert(myLocation);
/*
markerInfo.addressKey = myLocation;
markerInfo.marker = marker;*/
//mArray.push(markerInfo);
}
});
}
}
私はaddresskey
を検索し、mArray
からマーカーを削除します。しかし、私はジオコードコールバックメソッドで毎回最後の値を取得します。 1つのオブジェクトが毎回プッシュされました。 var myLocationは常に私の配列の最後のインデックスのアドレスを返します。私がチェックポイントAで警告したら、
私のアプローチは正しいですか?
はい変数とクロージャのスコープに問題がありました。 –