Google Maps API의 Marker Clusterers library를 사용할 때 cluster icon의 click event

하고 싶은 일



cluster icon을 클릭했을 때의 거동을 바꾸고 싶다(디폴트는 클릭하면 줌한다)

코드



markerclusterer.js
/**
 * Triggers the clusterclick event and zoom's if the option is set.
 */
ClusterIcon.prototype.triggerClusterClick = function() {
  var markerClusterer = this.cluster_.getMarkerClusterer();

  // Trigger the clusterclick event.
  google.maps.event.trigger(markerClusterer, 'clusterclick', this.cluster_);

  if (markerClusterer.isZoomOnClick()) {
    // Zoom into the cluster.
    this.map_.fitBounds(this.cluster_.getBounds());
  }
};

라이브러리의 위가 cluster icon이 클릭되었을 때의 이벤트 부분입니다.markerClusterer.isZoomOnClick 는 markerClusterer 옵션입니다.


이름
유형
Description


zoomOnClick
부울
Whether the default behaviour of clicking on a cluster is to zoom into it.


zoomOnClick이 true일 때 확대/축소되는 것 같습니다.
단순히 항상 줌하지 않는 것이라면 zoomOnClick:false 로 하면 됩니다.
또, 예를 들면 줌 레벨이 9 미만일 때만 줌 시키는 경우, if (markerClusterer.isZoomOnClick()) { 의 부분에 이하를 추기하면 됩니다.

markerclusterer.js
  if (markerClusterer.isZoomOnClick()) {
    if(this.map_.getZoom() < 9){
    // Zoom into the cluster.
    this.map_.fitBounds(this.cluster_.getBounds());
    }
  }

내 경우에는 단순히 맵을 드래그하고 싶은 것인데, cluster icon에서 드래그 해 버리면 드래그 한 후에 줌 해 버린다 줌하지 않겠습니다.」라고 바꿨습니다.

참고 : Gmaps Marker Clusterer

좋은 웹페이지 즐겨찾기