안녕하세요.
어제도 질문을 올렸는데 또 올리게 됐습니다. ㅠ
확대, 축소때마다 Zoom_changed 를 이용하여 커스텀오버레이를 숨기고 싶습니다.
소스는 아래와 같습니다.
var positions = [
{
"lat": 37.27943075229118,
"lng": 127.01763998406159,
"content": "테스트1"
},
{
"lat": 37.55915668706214,
"lng": 126.92536526611102,
"content": "테스트2"
}
// 500개 이상 입력 예정
];
for (var i = 0; i < positions.length; i++) {
var markers = $(positions).map(function(i, position) {
return new kakao.maps.Marker({
position : new kakao.maps.LatLng(positions[i].lat, positions[i].lng)
});
});
// 커스텀 오버레이 올리기 ㅜㅜㅜ
var customOverlays = $(positions).map(function(i, position) {
return new kakao.maps.CustomOverlay({
content: positions[i].content,
position : new kakao.maps.LatLng(positions[i].lat, positions[i].lng),
map:map,
zIndex: 1
});
});
}
// 확대 축소에 따라 커스텀 오버레이 출력 유무 정하기기
kakao.maps.event.addListener(map, 'zoom_changed', function() {
if(map.getLevel() <= 7) {
for(let i=0; i<customOverlays.length; i++) {
customOverlays[i].setMap(map);
}
} else if(map.getLevel() >= 7) {
for(let i=0; i<customOverlays.length; i++) {
customOverlays[i].setMap(null);
}
}
});
// 클러스터러에 마커들을 추가합니다
clusterer.addMarkers(markers);
다른건 잘되는데 Zoom_changed 부분만 막히네요 ㅠ
그리고 저 상태에서
var positions 의 위도,경도,컨텐츠가
대략 500개 정도 등록될 예정인데
테스트 해보니 지도가 엄청 느려지더라구요.
php문을 입력해야 해서 밖으로 뺀건데
json을 이용하는게 더 좋은것인지요…
감사합니다.