Zoom Change Event Listener con la API de Google Maps

10

Estoy tratando de crear un detector de eventos que apaga una capa de fusión de Google una vez que el mapa se acerca a un cierto nivel. Soy bastante nuevo en JavaScript y su API de Google Maps, por lo que agradezco cualquier ayuda. Encontré un código que parece cercano a lo que necesito:

google.maps.event.addDomListener(map, 'zoom_changed', function() {
  var zoom = map.getZoom();
  if (zoom >= 1 && zoom <= 9) { 
    layer_0.setMap(map);
    layer_1.setMap(map);
  } 
  else if (zoom > 9 && zoom <= 11) {
    layer_0.setMap(map);
    layer_1.setMap(map);
  }
  else if (zoom > 11) {
    layer_0.setMap(null);
    layer_1.setMap(map);
  }
});
b-rad-b
fuente
Consulte este sitio web: developers.google.com/maps/documentation/javascript/examples/… Joseph Shi
Joseph Shi
¿Puedes escribir un breve extracto, en caso de que el contenido se elimine más tarde?
lynxlynxlynx

Respuestas:

12

Aquí hay un código que estoy usando con éxito para alternar una capa de tablas de fusión en uno de mis mapas:

google.maps.event.addListener(map, 'zoom_changed', function() {
    zoomLevel = map.getZoom();
    if (zoomLevel >= minFTZoomLevel) {
        FTlayer.setMap(map);
    } else {
        FTlayer.setMap(null);
    }
});

se ve casi idéntico a su código, aparte de addListener vs addDomListener. ¿Puede intentar agregar un punto de interrupción dentro de su función para asegurarse de que realmente se esté ejecutando?

Stephen Lead
fuente
Gracias por tu ayuda. Definitivamente soy un novato cuando se trata de Google Maps y Javascript, así que todavía estoy trabajando en ello.
b-rad-b