自动缩放和自动居中显示窗口中的所有标记

时间:2013-07-30 06:17:34

标签: javascript google-maps

我使用谷歌地图使用标记显示位置。我正在传递一组位置来初始化()。我想将自动缩放和自动居中设置为映射,以便所有标记都可见。地图应采用缩放值,以便可以立即看到所有标记。这是我的代码:

     function initialize(arr) { 
      var myOptions = {
        zoom:13,
        center: arr[0],
        mapTypeId: google.maps.MapTypeId.ROADMAP
      };
      map = new google.maps.Map(document.getElementById("map-canvas"), myOptions);
      route = new google.maps.Polyline({
            path: arr,
            map:map
          });

              i=0;
              interval = setInterval(function() { 

                if(i<=arr.length)
                    {

                     marker = new google.maps.Marker({
                        position: arr[i],
                        map: map 

                      });
                     i++;

                    }//if

                else if(i>arr.length){

              window.clearInterval(interval);   
                }//else if
              },1000);//interval

}  //initialize

我有以下代码,但没有获得如何以及在何处使用它。

         var latlngbounds = new google.maps.LatLngBounds();
            for (var i = 0; i < latlng.length; i++) {
                latlngbounds.extend(latlng[i]);
            }
            map.setCenter(latlngbounds.getCenter(), map.getBoundsZoomLevel(latlngbounds));

1 个答案:

答案 0 :(得分:2)

根据您的问题,您似乎使用多个标记并且想要设置缩放级别。

如果是这样,我的建议是看看fitBounds()

  

fitBounds() 方法调整地图的视口以便查看   在地图的中心完整地传递了LatLngBounds。

查看此示例fiddle以获取演示。