Google Maps API v3:缩放更改后是否有回调或事件侦听器?

时间:2012-07-07 18:19:15

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

Google maps API v3在地图上有回调zoom_changed但在我开始缩放之前会触发(当我点击放大/缩小按钮时)。回调函数内的地图状态是缩放前的状态,我想要缩放后的那个。

有这样的回调吗?

由于

1 个答案:

答案 0 :(得分:4)

编辑:该链接已删除。

这似乎是API中的一个错误。

大多数人尝试做的事情基本上如下:

google.maps.event.addListener(map,'zoom_changed',function (event) {
    // some handling code here
});

但是,在边界发生变化之前事件发生时,这将不起作用。在这种情况下建议做的是:

zoomChangeListener = google.maps.event.addListener(map,'zoom_changed',function (event) {
    zoomChangeBoundsListener = google.maps.event.addListener(map,'bounds_changed',function (event) {  
      console.log(map.get_bounds());
      google.maps.event.removeListener(zoomChangeBoundsListener);
    });
});

所以现在,在zoom_changed事件触发后,我们实际上设置了另一个侦听器,这次是bounds_changed事件,因此在此事件触发时,我们确定边界已更改