2011-05-09 128 views
0

我一直在用Google地图测试一些东西,虽然这段代码给了我一个带有标记的地图,但是我没有得到覆盖点击。我实际上使用Rails,但这是我的Rails视图正在生成的代码 - 但我的JavaScript知识非常少。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 2011-05-09 14:39:16