만들어져있는 마커를 선택하는 법이 있을까요?

웹에서 사용 중입니다.
기본적으로 화면에 필요한 마커들을 먼저 생성 후,
필요한 마커를 찾기 위해 검색을 하고 그 위치로 setBounds 하고, 해당 마커를 선택하여 infowindow를 보여주고 싶습니다.

이렇게는 불가능하고 검색 시 clusterer.clear() 후 다시 추가하는 방법 밖엔 없을까요?

데이터-마커-인포윈도우 를 매핑 테이블로 관리해주세요.
매핑 테이블의 데이터를 검색해서 매칭되는 마커와 인포윈도우 정보로 지도 영역을 설정하고 infowindow를 열 수 있습니다.

var mappingData = {};
var data = {title: '카카오', content: '<div>카카오</div>', latlng: new kakao.maps.LatLng(33.450705,126.570677)}
var marker = new kakao.maps.Marker({ /*...*/ });
var infowindow = new kakao.maps.InfoWindow({ /*...*/ });
mappingData[data.title] = { marker, infowindow }; // 매핑 테이블 예시로만 참고해주세요. 로직에 따라 여러 방법으로 만들 수 있습니다.

function search(title) {
    var obj = mappingData[title]; 
    console.log(obj); // marker, infowindow 정보를 가져올 수 있습니다.
}
1개의 좋아요

감사합니다. for문 돌려서 해당 마커 에서 this 객체로 했었는데
이렇게 매핑테이블 사용하니 간편하고 좋네요!!

1개의 좋아요