Marker Clusterer Plus在悬停时更改图标

时间:2013-12-08 14:35:27

标签: javascript google-maps-api-3 google-maps-markers markerclusterer

如何动态更改用于Google地图V3的Marker Clusterer Plus中特定群集的图标?

标记似乎根本没有公开任何方法来修改它们。我需要做这样的事情(或同等的)。

google.maps.event.addListener(markerCluster, "mouseover", function (cluster) {
  cluster.setIcon(hoverIcon);
});
google.maps.event.addListener(markerCluster, "mouseout", function (cluster) {
  cluster.setIcon(normalIcon);
});

3 个答案:

答案 0 :(得分:15)

有一个代表集群的div元素的引用。这个div的第一个孩子是img-element,改变了这个图像的src:

    google.maps.event.addListener(markerCluster,'mouseover',function(c){
      c.clusterIcon_.div_.firstChild.src='hoverIconPath'});

    google.maps.event.addListener(markerCluster,'mouseout',function(c){
      c.clusterIcon_.div_.firstChild.src='normalIconPath'});

答案 1 :(得分:0)

最近的Google地图有一些变化。

    google.maps.event.addListener(markerCluster, 'clusterclick', function(cluster) {
    cluster.clusterIcon_.div_.style.backgroundImage = 'url("linktoyourimage")'})

图片图标已移至背景。

答案 2 :(得分:0)

对我来说,以下路径有效: cluster.clusterIcon.div.firstChild.src