我正在使用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);
});
我想一种方法是以某种方式创建一个规则,一次只能在地图上出现一个突出显示的图像。
答案 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 */);
});