Я пытаюсь обработать событие нажатия на MarkerClusterer
(v1.0) на карте Google (v3), чтобы увеличить центр кластера.
Проблема
Когда пользователь нажимает на кластер, появляется следующая ошибка:
Uncaught TypeError: Невозможно прочитать свойство '0' из неопределенного
в Cluster.getBounds (markerclusterer.js: 903)
в ClusterIcon.triggerClusterClick (markerclusterer.js: 1057)
в HTMLDivElement.(markerclusterer.js: 1082)
Cluster.getBounds @ markerclusterer.js: 903
ClusterIcon.triggerClusterClick @ markerclusterer.js: 1057 (анонимно) @ markerclusterer.js: 1082
Эта строка, присутствующая в функции MarkerClusterer
getBounds()
, кажется связанной с этой ошибкой:
for (var i = 0, marker; marker = markers[i]; i++) {
Источники
map = new google.maps.Map(document.getElementById('storemap'), {
center: {lat: parseFloat(defaultLat), lng: parseFloat(defaultLong)},
disableDefaultUI:false,
fullscreenControl:false,
streetViewControl:true,
zoom: 8,
styles : mapstyles
});
mc = new MarkerClusterer(map, markers, {styles: clusterStyles});
google.maps.event.addListener(mc, 'clusterclick', function(cluster){
map.setCenter(cluster.getCenter());
map.setZoom(map.getZoom()+3);
});
Мой вопрос
Как я могу исправить ошибку, когда пользователь нажимает на кластер?