2014-04-28 2 views
0

Google지도 v3에서이 지침을 수행 할 방법이 있습니까? 지도에 버튼이 있습니다. 첫 번째 클릭시 마커를 표시하고 두 번째 클릭하면지도에서 제거하고 싶습니다. 진심으로 감사드립니다.먼저 Google지도 v3에 마커를 표시하고 두 번째 아이콘을 숨김

//Add hotel's markers and infowindows to the map 

google.maps.event.addDomListener(hotel, 'click', function() { 
      for (var i = 0; i < len; i++) { 
       marker = new google.maps.Marker({ 
       position: new google.maps.LatLng(results.rows.item(i).lat,results.rows.item(i).long), 
       map: map, 
       icon : icons[1], 
       animation: google.maps.Animation.DROP, 

               }); 


      markers.push(marker); 


      google.maps.event.addListener(marker, 'click', (function(marker, i) { 
      return function() { 
       //if we create the infowindow here, all the windows 'll stay shown 
       infowindow.setContent("<div style='background-color:red;'><h3>"+results.rows.item(i).nom+"</h3><br/><center>"+"<img src='"+results.rows.item(i).img+"' style='width:20px; height:20px;' /></center><br/></div>") 
       infowindow.open(map,marker); 
           } 
       })(marker,i)); 


      } 


     }); 

답변

0
  1. 만들기
  2. 함수 toggleMarkers를 만들고 버튼 여기

빠른 예입니다 클릭 할 때 호출 변수 showMarkers 글로벌 :

var showMarkers = false; 

function toggleMarkers() { 

    if (showMarkers === false) { 

     for (var i=0; i<markers.length; i++) { 

      markers[i].setMap(map); 
     } 

     showMarkers = true; 

    } else { 

     for (var i=0; i<markers.length; i++) { 

      markers[i].setMap(null); 
     } 

     showMarkers = false; 
    }  
} 
+0

Plz은가, 이 코드를 어디에 넣을 수 있습니까? –

+0

'showMarkers' : 코드의 시작 부분에있는 함수 밖. 함수 자체 (코드 내의 임의의 다른 함수 외부). 단추에 기능을 바인딩하려면 다음을 클릭하십시오. – MrUpsidown

+0

다음 함수 내에서이 함수를 호출했습니다. google.maps.event.addDomListener (hotel, 'click', function() {}); 하지만 걷지 않았다. ( –

관련 문제