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);
  }
});


¿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?


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
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.