drawing toolbox로 도형 및 마커를 그린 후
클릭 시 특정 event가 발생하게 listener를 걸었습니다.
동시에 지도에도 클릭에 대한 listener를 걸었습니다.
문제는 도형 및 마커를 클릭 했을 때 지도 클릭에 대한 event가 같이 실행된다는 점입니다.
마커는 clickable 옵션이 있다지만, 다른 도형은 해당 옵션이 없는데 해결방법이 궁금합니다.
(참고로 마커 조차도 clickable: true를 했지만 마커 클릭 시 지도 클릭 이벤트도 같이 발생하네요…)
이전 질문주신 내용에 답변드린 소스에 map 이벤트를 하더라도
이벤트가 겹쳐서 발생하진 않습니다.
소스 첨부해주시면 확인해보겠습니다.
var manager = new kakao.maps.drawing.DrawingManager(options);
var path = [
new kakao.maps.LatLng(33.452344169439975, 126.56878163224233),
new kakao.maps.LatLng(33.452739313807456, 126.5709308145358),
new kakao.maps.LatLng(33.45178067090639, 126.5726886938753)
];
// 그리기 관리자에 폴리곤을 추가한다
manager.put(kakao.maps.drawing.OverlayType.POLYGON, path);
// 지도의 그린 요소 중 폴리곤 객체를 반환합니다. ex){polygon:[...,...]}
var overlays = manager.getOverlays([kakao.maps.drawing.OverlayType.POLYGON]);
// 폴리곤 배열값을 담습니다.
var polygons = overlays.polygon;
// polygon에 클릭 이벤트를 줍니다.
for(var i=0; i<polygons.length; i++){
var polygon = polygons[i];
kakao.maps.event.addListener(polygon, 'click', function(mouseEvent){
alert('listener is added');
});
}
kakao.maps.event.addListener(map, 'click', function(mouseEvent){
alert('map click');
});
감사합니다.
alert을 띄워서 확인해보니
marker를 클릭할 때는 괜찮은데 처음 마커를 생성할때 지도가 같이 클릭되는게 문제였네요
1개의 좋아요