Zoom Change Event Listener mit Google Maps API


10

Ich versuche, einen Ereignis-Listener zu erstellen, der eine Google Fusion-Ebene deaktiviert, sobald die Karte auf eine bestimmte Ebene vergrößert wird. Ich bin ziemlich neu in Javascript und seiner Google Maps-API, daher ist jede Hilfe willkommen. Ich habe einen Code gefunden, der dem nahe kommt, was ich brauche:

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

Bitte
Joseph Shi

Können Sie einen kurzen Auszug schreiben, falls der Inhalt später entfernt wird?
Lynxlynxlynx

Antworten:


12

Hier ist ein Code, mit dem ich erfolgreich einen Fusion Tables-Layer in einer meiner Karten umschalte:

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

Abgesehen von addListener und addDomListener sieht es fast identisch mit Ihrem Code aus. Können Sie versuchen, einen Haltepunkt in Ihre Funktion einzufügen, um sicherzustellen, dass er tatsächlich ausgeführt wird?


Danke für Ihre Hilfe. Ich bin definitiv ein Neuling, wenn es um Google Maps und Javascript geht, also arbeite ich immer noch daran.
B-Rad-B
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.