Probleme mit der Broschürenkarte in der Registerkarte „Daten umschalten“
Bei der Verwendung von Registerkarten zum Anzeigen von Inhalten kann es zu Problemen mit einer Broschürenkarte kommen Der Download schlägt fehl, wenn es in einem Datenumschalter platziert wird tab.
Ursache
Das Problem entsteht durch die Art und Weise, wie Leaflet die Kartencontainergröße initialisiert. Wenn die Karte initialisiert wird, liest Leaflet die Containergröße, die später ungültig werden kann, wenn der Container ausgeblendet oder seine Abmessungen geändert werden.
Lösung
Um dieses Problem zu beheben Problem: Sie müssen die Containergröße manuell aktualisieren, nachdem die Registerkarte angezeigt wird. Dies kann mit der Methode „map.invalidateSize()“ erreicht werden.
Implementierung
Fügen Sie in Ihrem JavaScript-Code einen Listener zum Klickereignis der Tab-Schaltfläche hinzu, um die Karte auszulösen Update:
$(document).ready(function () { var map = new L.Map('carteBenef'); // ... (rest of your code) // Add listener to tab button click $('#carteTabButton').on('click', function () { map.invalidateSize(); }); });
Alternativ können Sie Framework-spezifische Methoden verwenden, um die Kartenaktualisierung basierend auf der Sichtbarkeit der Registerkarte auszulösen. In Bootstrap können Sie beispielsweise das Ereignis „showned.bs.tab“ verwenden:
$('#carteTab').on('shown.bs.tab', function () { map.invalidateSize(); });
Indem Sie die Größe des Kartencontainers aktualisieren, nachdem die Registerkarte angezeigt wird, können Sie sicherstellen, dass die Leaflet-Karte innerhalb der korrekt heruntergeladen und gerendert wird Tab.
Das obige ist der detaillierte Inhalt vonWarum wird meine Prospektkarte nicht angezeigt, wenn sie in einer Daten-Umschaltregisterkarte platziert wird?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!