Dynamische Google Map mit benutzerdefinierten Kacheln verhindern das wiederholte Schwenken

Ich habe ein dynamisches Kachelset, in dem ich das Schwenken NICHT außerhalb seiner Grenzen zulassen möchte.

Der folgende Code bringt mich näher, aber der Benutzer kann immer noch horizontal außerhalb der strengen Grenzen scrollen, da er die Kartenmitte zum Vergleich verwendet

var strictBounds = new google.maps.LatLngBounds(
 new google.maps.LatLng(sw_lat, sw_lon), 
 new google.maps.LatLng(ne_lat, ne_lon)
);

google.maps.event.addListener(map, 'drag', function() 
{
  if (strictBounds.contains(map.getCenter())) return;

 // We're out of bounds - Move the map back within the bounds

 var c = map.getCenter(),
     x = c.lng(),
     y = c.lat(),
     maxX = strictBounds.getNorthEast().lng(),
     maxY = strictBounds.getNorthEast().lat(),
     minX = strictBounds.getSouthWest().lng(),
     minY = strictBounds.getSouthWest().lat();

 if (x < minX) x = minX;
 if (x > maxX) x = maxX;
 if (y < minY) y = minY;
 if (y > maxY) y = maxY;

 map.setCenter(new google.maps.LatLng(y, x));
});

Antworten auf die Frage(3)

Ihre Antwort auf die Frage