map.setZoom()不起作用,但map.setCenter()正在工作

时间:2013-07-06 04:41:32

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

我的部分代码如下所示,我可以使用

对地图进行居中
map.setCenter(myLatlng);

但之后我试图缩放地图

marker_id = id;
marker_id = new google.maps.Marker();

marker_id.setIcon(image);
myLatlng = new google.maps.LatLng(loctionupdateobj[id].lat, loctionupdateobj[id].lang);
marker_id.setPosition(myLatlng);        
marker_id.setMap(map);      

map.setCenter(myLatlng);

alert(map.getZoom());
map.setZoom(10);
alert("game again " + map.getZoom())

你可以看到

alert("game again " + map.getZoom())

在代码中它给我一个类似game again 10的提醒,但缩放级别永远不会转到10

但第一个警告是4(我在初始化期间设置)。

由于我无法setZoom,每次添加新标记时,我都会创建一个新的地图实例。

3 个答案:

答案 0 :(得分:6)

终于找到!!! 编写我的项目的前一个程序员写了一行

google.maps.event.clearListeners(map);

答案 1 :(得分:0)

所以第二个警报返回10,返回的第一个警报是什么,这也是10个?

如果是这样,你的缩放已经是10(对不起,如果这是一个愚蠢的问题,但没有提到这一点)。

答案 2 :(得分:0)

我的地图与places api配合使用,正在寻找位置。 我首先使用zoom : 23初始化地图。

搜索并提交我的位置后,地图将默认为其原始缩放比例。所以我不得不使用map.setZoom(23),它先是工作然后才停止。

这很奇怪,因为map.fitBounds()可以正常工作。

  setTimeout(function(){
      map.setZoom(23);                
      console.log('zoomed');
  },1);

我暂时的肮脏解决方案。 ¯\ _(ツ)_ /¯