Jeg prøver å lage en hendelseslytter som slår av et google-fusjonslag når kartet er zoomet inn til visst nivå. Jeg er ganske ny med javascript og dets google maps api, så all hjelp blir satt pris på. Jeg fant en kode som virker nær det jeg trenger:
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); } });
Kommentarer
- Se dette nettsted: developers.google.com/maps/documentation/javascript/examples/… Joseph Shi
- Kan du skrive et kort utdrag i tilfelle innholdet fjernes senere?
Svar
Her er en kode jeg vellykket bruker for å veksle et Fusion Tables-lag på et av kartene mine:
google.maps.event.addListener(map, "zoom_changed", function() { zoomLevel = map.getZoom(); if (zoomLevel >= minFTZoomLevel) { FTlayer.setMap(map); } else { FTlayer.setMap(null); } });
det ser nesten ut som koden din, bortsett fra addListener vs addDomListener. Kan du prøve å legge til et brytpunkt inne i funksjonen din for å sikre at den faktisk kjører?
Kommentarer
- Takk for hjelpen. Jeg ' er absolutt en nybegynner når det gjelder Google Maps og Javascript, så jeg ' jobber fremdeles med det.