2015-01-21 3 views
-2

라디오 버튼을 선택할 때 (특정 카테고리 내에서) 모든 마커 아이콘을 변경하는지도를 원합니다.Google지도의 모든 플롯에서 마커 아이콘을 변경하는 방법은 무엇입니까?

예를 들어 연도가있는 라디오 버튼 목록이 있고 해당 연도의 연도를 선택하면 해당 카테고리의 각 도시에 대한 아이콘이 변경됩니다.

example

혼자 Google지도 API 또는 Google 퓨전 테이블 또는 Google지도 API를 처리하지만, 지금까지 내가 어떤을 찾을 수 없습니다 자바 스크립트 플러그인의와 두 예제를 보았다.

답변

-1

이벤트를 선택함에 업체에게

Paris = new google.maps.Marker({...}) 

만들기

Paris.setIcon() 
+0

아, 그리고이 유발 될 수 있습니까? 이 같은 마커 추가는지도가 렌더링 될 때 한 번 발생한다고 생각했습니다. 감사합니다. 다시 신고 해 드리겠습니다. – pax

+0

또한 한 번에 여러 마커를 변경해야합니다. 하나씩 추가 필드가 선택되어 과장 될 수 있습니다. 답을 읽은 후 질문을 편집했습니다. – pax

-2

당신이 할 수있는 몇 가지 방법이 있습니다. 다음은 선택한 연도에 따라 마커 배열과 색상 배열을 사용한 예입니다.

마커와 함께 색상을 저장할 수는 있습니다 (예 : 데이터베이스).

기본적으로 각 마커를 배열로 밀어 넣어야 루프를 반복하고 필요할 때 변경 사항을 적용 할 수 있습니다.

// Your array of markers 
var latLngs = [ 
    new google.maps.LatLng(40.7, -74), 
    new google.maps.LatLng(40.8, -73), 
    new google.maps.LatLng(40.9, -72), 
    new google.maps.LatLng(41, -71) 
]; 

// Your arrays of colors (for each year) 
var colors1 = ['red', 'blue', 'yellow', 'green']; 
var colors2 = ['blue', 'red', 'green', 'yellow']; 
var colors3 = ['green', 'yellow', 'blue', 'red']; 

// Create the markers and push them to an array 
for (var i = 0; i < latLngs.length; i++) { 

    var marker = new google.maps.Marker({ 
     position: latLngs[i], 
     icon: 'http://www.google.com/intl/en_us/mapfiles/ms/micons/' + colors1[i] + '-dot.png', 
     map: map 
    }); 

    markers.push(marker); 
} 

희망을 얻으십시오. 맵이 설정을 한 후

JSFiddle demo

관련 문제