移动谷歌地图中心javascript api

2023-12-28

在我的项目中,我想将地图的中心移动到新的坐标。这是我的地图代码

function initialize() {
    var mapOptions = {
      center: new google.maps.LatLng(0, 0),
      zoom: 4,
      mapTypeId: google.maps.MapTypeId.ROADMAP
    };
    var map = new google.maps.Map(document.getElementById("map_canvas"),
        mapOptions);
  }
  function moveToLocation(lat, lng){
     var center = new google.maps.LatLng(lat, lng);
     var map = document.getElementById("map_canvas");
     map.panTo(center);

  }

moveToLocation 函数确实被调用,但地图没有重新居中。知道我缺少什么吗?


你的问题是在moveToLocation,你正在使用document.getElementById试图得到Map对象,但这只会给你一个HTMLDivElement,不是google.maps.Map你所期待的对象。所以你的变量map has no panTo功能,这就是它不起作用的原因。你需要的是松鼠map变量在某个地方,它应该按计划工作。您可以像这样使用全局变量:

window.map = undefined;      // global variable

function initialize() {
  const mapOptions = {
    center: new google.maps.LatLng(0, 0),
    zoom: 4,
    mapTypeId: google.maps.MapTypeId.ROADMAP
  };
  // assigning to global variable:
  window.map = new google.maps.Map(
    document.getElementById("map_canvas"), mapOptions);
}

function moveToLocation(lat, lng){
  const center = new google.maps.LatLng(lat, lng);
  // using global variable:
  window.map.panTo(center);
}

请参阅此处的工作 jsFiddle:http://jsfiddle.net/fqt7L/1/ http://jsfiddle.net/fqt7L/1/

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

移动谷歌地图中心javascript api 的相关文章

随机推荐