Возможно, вам лучше изменить событие click для маркера в markerclusterer.js, начиная со строки 672.
В настоящее время:
GEvent.addDomListener(div, "click", function () {
var pos = map.fromLatLngToDivPixel(latlng);
var sw = new GPoint(pos.x - padding, pos.y + padding);
sw = map.fromDivPixelToLatLng(sw);
var ne = new GPoint(pos.x + padding, pos.y - padding);
ne = map.fromDivPixelToLatLng(ne);
var zoom = map.getBoundsZoomLevel(new GLatLngBounds(sw, ne), map.getSize());
map.setCenter(latlng, zoom);
});
Изменить на что-то вроде:
GEvent.addDomListener(div, "click", function () {
map.openInfoWindowHtml(latlng, "Put your infowindow content here");
});
Очевидно, что в зависимости от того, насколько вы хотите абстрагироваться, вы можете сделать пару вещей:
- Добавить параметры конфигурации в MarkerClusterer, чтобы указать, нужно ли увеличивать или увеличивать функциональность информационного окна
- Определите настройку функции обратного вызова, в которой вы указываете, какую функцию MarkerClusterer будет вызывать при нажатии на кластер.