2011-05-14 65 views
4

我正在使用Google Maps V3 API,並在地圖上創建多個標記後,我很難讓地圖縮小以顯示所有標記。現在下面的代碼只顯示標記而不調整縮放。你能找到那裏的錯誤嗎?謝謝!谷歌地圖V3縮放以顯示所有標記不起作用

<script type="text/javascript"> 
    function initialize() { 
     var latlng = new google.maps.LatLng(1.289566,103.847267); 
     var options = { 
      zoom: 15, 
      center: latlng, 
      mapTypeId: google.maps.MapTypeId.ROADMAP, 
      scrollwheel: false 
     }; 

     var map = new google.maps.Map(document.getElementById('map_canvas'), options); 
     var marker = new google.maps.Marker({ 
      position: new google.maps.LatLng(1.289566,103.847267), 
      map: map, 
      icon: "http://chart.apis.google.com/chart?chst=d_map_pin_letter&chld=1|ff776b" 
     }); 

     var marker = new google.maps.Marker({ 
      position: new google.maps.LatLng(1.301224,103.912949), 
      map: map, 
      icon: "http://chart.apis.google.com/chart?chst=d_map_pin_letter&chld=2|ff776b" 
     }); 

     var marker = new google.maps.Marker({ 
      position: new google.maps.LatLng(1.293150,103.827164), 
      map: map, 
      icon: "http://chart.apis.google.com/chart?chst=d_map_pin_letter&chld=3|ff776b" 
     }); 

     var LatLngList = array (
     new google.maps.LatLng(1.289566,103.847267), 
     new google.maps.LatLng(1.301224,103.912949), 
     new google.maps.LatLng(1.293150,103.827164) 
     ); 

     var bounds = new google.maps.LatLngBounds(); 

     for (var i = 0, LtLgLen = LatLngList.length; i < LtLgLen; i++) { 
      bounds.extend(LatLngList[i]); 
     } 

     map.fitBounds(bounds); 

    } 
</script> 

回答

5

此:

var LatLngList = array (
     new google.maps.LatLng(1.289566,103.847267), 
     new google.maps.LatLng(1.301224,103.912949), 
     new google.maps.LatLng(1.293150,103.827164) 
     ); 

是不是你在JavaScript中創建陣列。相反,嘗試:

var LatLngList = [ 
    new google.maps.LatLng(1.289566,103.847267), 
    new google.maps.LatLng(1.301224,103.912949), 
    new google.maps.LatLng(1.293150,103.827164) 
    ]; 
+0

作品,謝謝! – Nyxynyx 2011-05-14 13:34:01

3

如果要定義LatLngList你有一個錯誤。正確的代碼應該是:

var LatLngList = new Array(); 

不:

var LatLngList = array(); 
+0

可能是OP是PHP程序員,不是嗎? – 2011-05-14 07:56:18

+0

是的我主要在PHP代碼:)謝謝! – Nyxynyx 2011-05-14 13:33:48