Google MAP API v3 : 표시된 마커 센터 및 확대 / 축소 [javascript]


Answers

보다 기능적인 스타일을 선호하는 경우 :

// map - instance of google Map v3
// markers - array of Markers
var bounds = markers.reduce(function(bounds, marker) {
    return bounds.extend(marker.getPosition());
}, new google.maps.LatLngBounds());

map.setCenter(bounds.getCenter());
map.fitBounds(bounds);
Question

지도에서 마커를 설정하는 데 다음 코드를 사용합니다.

  var latLngs = []
  $.each(locations.markers, function(i, m){
   var myLatLng = new google.maps.LatLng(m.latitude, m.longitude);
   latLngs[i] = myLatLng                                          
   var marker = new google.maps.Marker({
    position: myLatLng,
    map: map,
    shadow: shadow,
    icon: image,
    shape: shape,
    title: m.city,
    zIndex: i
   });
  }) 

마커가 내지도에 표시됩니다. 이제이 마커를 중심으로 확대 / 축소하고 싶습니다. 이것을 어떻게 할 수 있습니까? 나는 시도했다 :

map.fitBounds(getBoundsForLatLngs(latLngs));

latLngs의 console.log는 다음을 제공합니다.

 [(46.793182, 7.146903) { b=46.793182,  more...}, (46.8077779, 7.1709386) { b=46.8077779,  more...}]

하지만 작동하지 않는 것 같아요. 콘솔에 아무런 오류가 없습니다. 내가 뭘 잘못 했니?