for (var i = 0; i < homeadress.length; i++) {
var circle = ‘<…div class =“circle-main”><…div class=“circle”>’+ (i+1) +’<…/div><…/div>’;
var customOverlay = new kakao.maps.CustomOverlay({
map: map,
position: homeadress[i].latlng,
content: circle,
clickable: true,
});
}
이렇게 만들었을 때
customOverlay를 mouseover 나 click 이벤트를 줄 수 없나요?
주려면 어떻게 해야 하나요?
lea.ju
2월 17, 2020, 12:55오전
#2
CustomOverlay 이벤트는 content
옵션에 들어갈 객체를 HTML Element로 생성한 후
해당 객체에 DOM 이벤트를 걸어야합니다.
아래 링크 참고해주세요.
안녕하세요 제가 현재 닫기가 가능한 커스텀 오버레이를 여러 마커에 적용을 시키고 싶은데요 조금 어려운 부분이 있어 도움을 요청합니다.
우선 제가 사용한 코드
[지도api1][지도api2][지도api3]
이렇게 인데요
이렇게 하면 결국 반목문의 마지막 닫기만 가능하더하구요 혹시 도움 주실수 있을까요??ㅠㅠ
기능 자체는 구현이 가능합니다. 다만 구현에 필요한 구체적인 코드는 마커를 사용할 때와는 다릅니다. daum.maps.addListener(marker, ‘click’, handler); 위 처럼 기존 마커에서 사용해왔던 이벤트 리스너는 CustomOverlay 에서 동작하지 않습니다. 필요한 이벤트들은 content 내부에 넣을 HTML Element(EventTarget)들에게 각각 Native DOM 이벤트를 걸어주셔야 합니다. // Native Dom Event Listener EventTarget.addEventListener(‘click’, handler); // jQuery 사용시 $(EventTarget).on(‘click’, handler); DOM 이벤트를 사용하는것이니 만큼 이벤트 타입들도 HTML 스펙에서 지원되는 것들을 사용할 수 있습니다. https://en.wikipedia.org/wiki/DOM_events#Common_events