Google Map API - кластерный маркер - Как скрыть, отключить или очистить выбранный или отфильтрованный clusterMarkers - PullRequest
0 голосов
/ 31 января 2012

Прежде всего большое спасибо и признателен за любую помощь, совет или предложение по вышеуказанным задачам.

В моей программе есть 2 основные части, такие как: - 1. Флажок по категории или состоянию.2. ClusterMarkers по выбранной категории или состоянию

Из-за моих ограниченных технических навыков и знаний у меня возникают проблемы с очисткой, отключением или скрытием clusterMarker, если снять флажок.Вы пробовали много методов, таких как: -

if ( markerClusterer !== null ) {
   markerClusterer.clearMarkers();
}

или var clear = document.getElementById ('clear');google.maps.event.addDomListener (clear, 'click', clearClusters);

function clearClusters(e) {
    e.preventDefault();
    e.stopPropagation();
    markerClusterer.clearMarkers();
    map.clearOverlays();
}

детализирует программу и данные следующим образом: - Program-> [jsfiddle] (jsfiddle.net/39tES) Data ->[jsfiddle] (jsfiddle.net/DELus)

1 Ответ

0 голосов
/ 19 марта 2012

Звучит так, будто вы хотите несколько экземпляров.Если вы можете агрегировать данные по уровню состояния, вы можете попробовать создать экземпляр MarkerClusterer для каждого состояния / категории:

var clustererStateOrCat = new MarkerClusterer(mapInstance, markersForStateOrCat, mc_opts);

, тогда у вас может быть литерал объекта, в котором хранятся экземпляры:

var clusterers[stateOrCategoryName] = clustererStateOrCat;

Тогда вы можете просто определить, в каком состоянии / категории щелкнули, и удалить / нарисовать маркеры только для этого конкретного объекта.

...