Google Maps Api:渲染后将地图中心设置为不同的坐标

时间:2015-10-22 14:27:37

标签: javascript google-maps google-maps-api-3 web

我希望在一段时间间隔后更改谷歌地图的中心,以便它可以专注于整个大陆的某些区域,其中有标记显示餐馆分支。我已成功使用标记渲染地图。我遇到的问题是通过纬度和经度列表更改中心循环。我正在尝试这样做。

var lat[];
        var lang[];

            function moveToLocation(){
                var center = new google.maps.LatLng(lat, lng);
                map.panTo(center);
            }

             setInterval(moveToLocation, 3000);  

2 个答案:

答案 0 :(得分:0)

我认为这应该有效,但未经过测试......

function moveToLocation(){
    map.panTo(map.getCenter());
}

setInterval(moveToLocation, 3000); 

答案 1 :(得分:0)

从这个相关问题:Google maps dynamically zooming in different locations

proof of concept fiddle

代码段

var map;

function initialize() {
  map = new google.maps.Map(
    document.getElementById("map_canvas"), {
      center: new google.maps.LatLng(37.4419, -122.1419),
      zoom: 8,
      mapTypeId: google.maps.MapTypeId.ROADMAP
    });

  var places = [
    [52, -1],
    [52, -2],
    [53, -3],
    [53, -5],
    [54, -4],
    [54, -6]
  ];

  var index = 0;
  zoomInterval = setInterval(function() {
    var lat = places[index][0];
    var lng = places[index][1];
    index = (index + 1) % places.length;
    map.setCenter(new google.maps.LatLng(lat, lng));

  }, 5000);


}
google.maps.event.addDomListener(window, "load", initialize);
html,
body,
#map_canvas {
  height: 100%;
  width: 100%;
  margin: 0px;
  padding: 0px
}
<script src="https://maps.googleapis.com/maps/api/js"></script>
<div id="map_canvas"></div>