2013. 1. 15. 15:26ㆍWEB/Google Maps
//초기 실행 함수
function init(){
google.maps.event.addListener(map, 'zoom_changed', function() {
var bounds = map.getBounds();
var endLo = bounds.getNorthEast();
var startLo = bounds.getSouthWest();
addMarker(startLo, endLo);
});
google.maps.event.addListener(map, 'dragend', function(evt){
var bounds = map.getBounds();
var endLo = bounds.getNorthEast();
var startLo = bounds.getSouthWest();
addMarker(startLo, endLo);
});
}
//마커 출력 함수
function addMarker(startLo,endLo){
for (var i=0; i < 반복횟수; i++){
marker = new google.maps.Marker({
position: latlng,
map: map,
icon: "truck.png",
title : carnm+'('+carid+')'
});
markersArray.push(marker);
//지도에 출력된 마커를 클릭했을 경우 이벤트(infoWindow 출력)
google.maps.event.addListener(marker, 'click', function (event){
popInfoWindow(인포윈도우에 출력할 파라미터); //popInfoWindow 함수는 생략
});
}
}
전체 소스는 아니지만..위의 소스를 참고하여 맵 위치 이동 시 현재 모니터에 출력된 지도의 범위내에만 마커를 출력하는 기능을 구현할 수 있습니다.
zoom_changed, dragend 외에도 bounds_changed나 center_changed 등 상황에 맞는 이벤트를 사용하시면 됩니다.
리스너 등록 시 이벤트는 구글맵 API에 많이 나와있습니다.
Google Maps API 링크 : https://developers.google.com/maps/documentation/javascript/reference?hl=ko
'WEB > Google Maps' 카테고리의 다른 글
구글맵 맵 로딩이 완료된 후 함수 실행(리스너 등록) (0) | 2013.01.15 |
---|---|
구글맵 마커 이미지 변경 (0) | 2013.01.15 |
구글맵 중심점 자동으로 계산하기 (0) | 2013.01.15 |
(WEB/JavaScript) 구글맵 지오코딩(geocoding) (0) | 2013.01.15 |
구글맵스 개발 시작하기 (0) | 2013.01.15 |