Google Maps API v3:如何在点击其他标记时将标记颜色返回原始颜色?

时间:2013-03-12 10:13:51

标签: google-maps

我正在使用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 个答案:

答案 0 :(得分: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 */);

});