Я борюсь с маркером кластерного события mouseover / mouseout. Я хочу добиться следующего эффекта. Когда я указываю своей мышью на кластер маркеров, другие кластеры маркеров удаляются (или скрываются) с карты. Далее будут нарисованы новые кластеры (в других местах). Когда я перестану наводить курсор на маркер, эти вновь созданные кластерные маркеры будут удалены с карты, а предыдущие удаленные (скрытые) маркеры будут нарисованы. В данный момент я нахожусь в этой точке:
let markerCluster = new MarkerClusterer(map, markers, {
imagePath: 'https://cdn.rawgit.com/googlemaps/js-marker-clusterer/gh-pages/images/m',
zoomOnClick: false,
minimumClusterSize: 1,
fitToMarkers: true
});
markerCluster.setIgnoreHidden(true);
google.maps.event.addListener(markerCluster, "mouseover", (cluster) => {
markerCluster.getClusters().filter((eachCluster) => eachCluster !== cluster).forEach((eachCluster) => {
eachCluster.getMarkers().forEach((marker) => marker.setVisible(false));
});
cluster.getMarkers().forEach((marker) => {
//points to method which adds to map new markers from the given marker
});
markerCluster.repaint();
});
google.maps.event.addListener(markerCluster, "mouseout", (cluster) => {
markers.forEach((marker) => {
marker.setVisible(true);
});
markerCluster.repaint();
});
Моя проблема в том, что когда я вызываю метод markerCluster.repaint()
, происходит несколько событий mouseover и mouseout.