2011-05-09 8 views
0

나는 Google지도로 몇 가지 물건을 테스트 해왔고,이 코드는 마커가있는지도를 제공하지만 클릭 할 때 오버레이를 얻지는 못합니다. 나는 레일즈를 실제로 사용하고 있지만 이것이 레일즈 뷰가 생성하는 코드이다 - 그러나 자바 스크립트 지식은 매우 미미하다.Infowindow with Google maps

<script type="text/javascript"> 
    function initialize() { 
    var latlng = new google.maps.LatLng(38.92226, -77.02515); 
    var myOptions = { 
     zoom: 15, 
     center: latlng, 
     mapTypeId: google.maps.MapTypeId.ROADMAP 
    }; 

    var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions); 

    var contentString = '1X438A40'; 
    var infowindow = new google.maps.InfoWindow({ 
      content: contentString 
     }); 

    var marker = new google.maps.Marker({ 
       position: latlng, 
       map: map, 
       title:"1X438A40" 
    }); 
    } 

    google.maps.event.addListener(marker, 'click', function() { 
    infowindow.open(map,marker); 
    }); 

</script> 

답변

1

addListener 함수가 initialize() 함수 범위 밖에 있습니다. 중괄호 안에 들어가면 속임수를 써야합니다.

<script type="text/javascript"> 
     function initialize() { 
     var latlng = new google.maps.LatLng(38.92226, -77.02515); 
     var myOptions = { 
      zoom: 15, 
      center: latlng, 
      mapTypeId: google.maps.MapTypeId.ROADMAP 
     }; 

     var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions); 

     var contentString = '1X438A40'; 
     var infowindow = new google.maps.InfoWindow({ 
       content: contentString 
      }); 

     var marker = new google.maps.Marker({ 
        position: latlng, 
        map: map, 
        title:"1X438A40" 
     }); 

     google.maps.event.addListener(marker, 'click', function() { 
     infowindow.open(map,marker); 
     }); 
    } 

    </script> 
+0

감사합니다. – Slick23