Google Maps API v3에서 모든 마커 제거
Google Maps API v3에서 모든 마커를 지우는 방법은 v2에서 사용되는 접근 방식과 약간 다릅니다. . map.clearOverlays()를 더 이상 사용할 수 없지만 다음 단계는 동일한 효과를 얻을 수 있는 효율적인 방법을 제공합니다.
1. 전역 마커 배열 선언
var markersArray = [];
이 배열은 지도의 모든 마커에 대한 참조를 저장합니다.
2. 오버레이 지우기 기능 정의
오버레이 지우기 기능을 정의하는 데는 두 가지 옵션이 있습니다.
옵션 A:
function clearOverlays() { for (var i = 0; i < markersArray.length; i++ ) { markersArray[i].setMap(null); } markersArray.length = 0; }
옵션 B(Google 지도 확장 API):
google.maps.Map.prototype.clearOverlays = function() { for (var i = 0; i < markersArray.length; i++ ) { markersArray[i].setMap(null); } markersArray.length = 0; }
3. 배열에 마커 추가
clearOverlays() 함수를 호출하기 전에 각 마커를 markersArray에 푸시합니다.
markersArray.push(marker); google.maps.event.addListener(marker,"click",function(){});
4. Clear Overlays 함수 호출
clearOverlays() 호출; 또는 map.clearOverlays(); 지도에서 모든 마커를 제거해야 할 때마다 기능합니다. 이 함수는 markersArray를 반복하고 각 마커의 map 속성을 null로 설정한 다음 배열을 비웁니다.
위 내용은 Google Maps API v3에서 모든 마커를 지우는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!