Estoy intentando crear un detector de eventos que desactive una capa de fusión de Google una vez que el mapa se acerque a un cierto nivel. Soy bastante nuevo en javascript y su API de Google Maps, por lo que se agradece 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); } });
Comentarios
- Por favor, vea esto sitio web: developers.google.com/maps/documentation/javascript/examples/… Joseph Shi
- ¿Puede escribir un breve extracto, en caso de que el contenido se elimine más tarde?
Responda
Aquí es un código que estoy usando con éxito para alternar una capa de Fusion Tables 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); } });
parece casi idéntico a su código, aparte de addListener vs addDomListener. ¿Puedes intentar agregar un punto de interrupción dentro de tu función para asegurarte de que se está ejecutando realmente?
Comentarios
- Gracias por tu ayuda. Soy ' definitivamente un novato en lo que respecta a Google Maps y Javascript, así que ' todavía estoy trabajando en ello.