Javascript Don';t在缩放时触发自定义平铺覆盖
我有一个使用谷歌地图API v3的自定义瓷砖覆盖设置。但是,当多个并发用户处于活动状态时,为其生成映像的后端没有足够的能力来处理所有调用。因此,在很多方面,我都试图减少地图所要求的平铺数量。不过,还有一个优化我似乎想不出来: 当用户双击缩放或使用缩放控件时,地图将重新触发请求新平铺图像的平铺覆盖。但如果用户在加载磁贴之前触发缩放按钮或再次双击,这些都是浪费的呼叫。所以我想做的是建立一个延迟,在触发新的平铺图像之前等待x秒 有了当前的事件监听器(zoom_changed,dbl_click,click),我似乎无法阻止google maps触发新的图像分幅。看起来,在zoom_changed事件触发时,已经在请求磁贴了。所以我错过了一种阻止getTileUrl触发的方法。我已经知道如何重新触发它,我只想知道当用户使用zoom时如何停止它 有人知道如何解决这个问题吗 我使用此实现作为基础:Javascript Don';t在缩放时触发自定义平铺覆盖,javascript,jquery,google-maps,google-maps-api-3,Javascript,Jquery,Google Maps,Google Maps Api 3,我有一个使用谷歌地图API v3的自定义瓷砖覆盖设置。但是,当多个并发用户处于活动状态时,为其生成映像的后端没有足够的能力来处理所有调用。因此,在很多方面,我都试图减少地图所要求的平铺数量。不过,还有一个优化我似乎想不出来: 当用户双击缩放或使用缩放控件时,地图将重新触发请求新平铺图像的平铺覆盖。但如果用户在加载磁贴之前触发缩放按钮或再次双击,这些都是浪费的呼叫。所以我想做的是建立一个延迟,在触发新的平铺图像之前等待x秒 有了当前的事件监听器(zoom_changed,dbl_click,cli
谷歌有人给我指出了正确的方向。经过一些研究,我发现:
google.maps.event.addDomListener(map, "zoom_changed", function () {
map.overlayMapTypes.setAt(0, null);
}
解决了我的问题
这允许我停止覆盖触发器,因此现在可以随时重新触发它