Der folgende Code initialisiert eine Leaflet-Map. Die Initialisierungsfunktion zentriert die Karte basierend auf dem Standort des Benutzers. Wie ändere ich die Mitte der Karte auf eine neue Position, nachdem ich die Initialisierungsfunktion aufgerufen habe?
Es hängt nur davon ab, welches Verhalten Sie wollen. map.panTo() schwenkt mit Zoom/Schwenk-Animation zur Position, während map.setView() Stellen Sie die neue Ansicht sofort auf die gewünschte Position/Zoomstufe ein.
Ich mag dieses, weil Sie auch die Zoomstufe erhalten, was sehr nützlich ist.
– Herr Concolato
16. Oktober 2014 um 18:12 Uhr
Sie können die Koordinaten auch als Array übergeben: map.setView([40.737, -73.923], 8) oder ein Objekt map.setView({lat:40.737, lng:-73.923}, 8)
– Leobelizquierdo
11. Februar 2016 um 17:48 Uhr
panTo zeigte keine Animation, die ich verwende map.setView(latlng, map.getZoom(), { animation: true });
– Ivan Ferrer-Villa
24. Januar 2017 um 15:49 Uhr
Animation funktioniert immer noch nicht mit setView
– Chovy
1. Mai um 14:03 Uhr
Stefan Nedelku
Verwenden map.panTo(); führt nichts aus, wenn sich der Punkt in der aktuellen Ansicht befindet. Verwenden map.setView() stattdessen.
Ich hatte eine Polylinie und musste die Karte jede Sekunde auf einen neuen Punkt in der Polylinie zentrieren. Überprüfen Sie den Code: GUT: https://jsfiddle.net/nstudor/xcmdwfjk/