如何删除Google Maps API v3中的 'bounds_changed' 事件侦听器?
google.maps.event.removeListener(_???_);
如何删除Google Maps API v3中的 'bounds_changed' 事件侦听器?
google.maps.event.removeListener(_???_);
通常您可以在 Google Maps API 文档中找到此类问题的答案。
正如安德鲁所说, addListener 返回一个句柄,您可以稍后使用它来删除侦听器。那是因为单个事件可以有许多侦听器,要删除它们,您必须保存对每个附加侦听器的引用。
还有一个函数可以同时移除所有的监听器:
clearListeners(instance:Object, eventName:string);
//In your case:
google.maps.event.clearListeners(map, 'bounds_changed');
这是您可以阅读的 Google Maps API 参考。
addListener 返回一个句柄,您可以稍后将其传递给 removeListener:
var listenerHandle = google.maps.event.addListener(map, 'bounds_changed', function() {
google.maps.event.removeListener(listenerHandle);
这似乎在当前版本中有效。
var listenerHandle = google.maps.event.addListener(map, 'bounds_changed', function() {
// Handler code.
});
listenerHandle.remove();
如果你不能以某种方式持有监听器对象,你可以直接删除监听器google.maps.event.clearListeners(objectListened, 'event');
前任:google.maps.event.clearListeners(map, 'bounds_changed');