缩放更改后获取谷歌地图v3的界限

7 google-maps google-maps-api-3

我想在缩放变化后获取地图的边界,但是在重新计算边界之前会触发zoom_changed事件.因此,在zoom_changed处理程序中,您将获得先前的边界,而不是新的边界.

有没有办法如何获得缩放变化的适当界限?

TMS*_*TMS 17

这是一个错误,如果你有兴趣,请为这个问题加注吧.

它有一个丑陋的解决方法:

google.maps.event.addListener(map, 'zoom_changed', function () {
    google.maps.event.addListenerOnce(map, 'bounds_changed', function (e) {
            my_zoom_handler(); // do your job here
    });
});
Run Code Online (Sandbox Code Playgroud)


Red*_*ing 3

来自API 文档

如果您尝试检测视口中的更改,请确保使用特定的bounds_changed 事件而不是组成的zoom_changed 和center_changed 事件。由于 Maps API 独立触发后面这些事件,因此 get_bounds() 在视口发生权威更改之前可能不会报告有用的结果。如果您希望在此类事件之后使用 get_bounds(),请务必监听bounds_changed 事件。