/ / Google Maps API v3:別のマーカーをクリックしたときにマーカーの色を元に戻す方法- グーグルマップ

Google Maps API v3:別のマーカーをクリックしたときにマーカーの色を元の色に戻す方法- グーグルマップ

onclickイベントを使用して、マーカーがクリックされたときにマーカー画像を変更し、マーカーが強調表示されていることを示しています。

別のマーカーをクリックすると、このマーカーが強調表示されたままになるのではなく、元の画像に戻ります。

ここにコードがあります。

 google.maps.event.addListener(marker, "click", function() {
marker.setIcon("default_h.png")
infowindow.open(map, marker);
document.getElementById("address_box").value = (title + "n" + address);
});

1つの方法は、一度にマップ上に強調表示された画像が1つだけ表示されるというルールを作成することです。

回答:

回答№1は1

クリックしたマーカーへの参照をどこかに保存し、setIconを使用する必要があります。

したがって、コードは次のようにあいまいになります。

var highlighted;

//create your markers here and assign them event listeners
var markerObject = new google.maps.Marker({});
google.maps.event.addListener(markerObject,"click",function() {
if(highlighted) {
highlighted.setIcon(/* original icon */);
}

highlighted = markerObject;
highlighted.setIcon(/* highlighted icon */);

});