Daten-Toggle-Tab stört die Initialisierung der Leaflet-Karte
Broschürenkarten sind für ihre Fähigkeit bekannt, interaktive Karten auf Webseiten anzuzeigen. Bei der Verwendung von Leaflet-Karten innerhalb einer Daten-Toggle-Tab-Struktur kann jedoch ein Problem auftreten, das dazu führt, dass die Karte nicht richtig geladen wird.
Verstehen des Problems
Das Problem ergibt sich aus der Art und Weise, wie Leaflet seine Karten initialisiert. Es berechnet die Containergröße während der Kartenerstellung. Wenn der Container bei der Initialisierung ausgeblendet ist (z. B. innerhalb einer ausgeblendeten Registerkarte im Fall von Daten-Umschaltregisterkarten), kann Leaflet seine Größe möglicherweise nicht genau bestimmen. Dies kann zu fehlerhaften Kachel-Downloads und unvollständiger Kartenwiedergabe führen.
Lösung: Containergröße manuell aktualisieren
Um dieses Problem zu beheben, können Sie eine Aktualisierung der Containergröße manuell auslösen die Methode map.invalidateSize(). Dadurch wird Leaflet gezwungen, die Containergröße neu zu berechnen, sodass Kacheln korrekt heruntergeladen und die Karte wie erwartet angezeigt werden können.
So implementieren Sie diese Lösung mit jQuery:
$(document).on('shown.bs.tab', '#carte', function () { map.invalidateSize(); });
In diesem Code Der Ereignis-Listener „showned.bs.tab“ wird verwendet, um zu erkennen, wann die Registerkarte „Karte“ angezeigt wird. In diesem Fall wird die Funktion „map.invalidateSize()“ ausgelöst, um sicherzustellen, dass die Containergröße aktualisiert und die Karte ordnungsgemäß angezeigt wird.
Zusätzliche Hinweise
Das obige ist der detaillierte Inhalt vonWarum kann meine Prospektkarte in einer Daten-Toggle-Tab-Struktur nicht geladen werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!