4

Как я могу динамически изменять значок, используемый для определенного кластера, в Marker Clusterer Plus для Google Maps 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); 
}); 
+0

Ссылка на библиотеку «Marker Clusterer Plus» не работает. Можете ли вы предоставить ссылку? – mistletoe

+0

Скорее всего, это: https://github.com/googlemaps/v3-utility-library/tree/master/markerclustererplus – Nicolas

+0

Хорошо. Большое спасибо! – mistletoe

ответ

13

Существует ссылка на элемент div, представляющий кластер. Первым ребенком этого div является img-элемент, измените 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'}); 
+0

Спасибо! Это действительно работает очень хорошо. Тем не менее, я имел в виду способ изменить полный «стиль», т. Е. Изменить URL-адрес, цвет шрифта, размер и т. Д. Кроме того, стыдно, что единственный способ сделать это - связать два частных метода. – Nicolas

Смежные вопросы