Ich versuche, eine Map-basierte Web-App mit mapbox und leaflet.js zu erstellen.Schlechte Leaflet.js Leistung im Internet Explorer
Ich lade 300 Marker in eine FeatureLayer aus einer GeoJSON-Datei. Dies scheint in jedem Browser mit Ausnahme des Internet Explorer gut zu funktionieren, der bei jedem Laden oder Filtern von Markern mit featureLayer.setFilter etwa 10 Sekunden lang einfriert. Ich habe eine Demo dieser here hochgeladen.
Locking bei der IE-Performance-Analyse scheint der Schuldige der 'addDoubleTapListener' zu sein. Dies scheint ein bekanntes Problem zu sein (https://github.com/Leaflet/Leaflet/issues/4357), und die Lösungen schlagen vor, auf Merkblatt 0.7.5 zurückzurollen oder den Zweig 0.7.7.1 zu verwenden (mit einem Fix, der die Berührungserkennung zurücknimmt). Ich habe beides versucht und scheint auch keinen Einfluss auf das Problem zu haben. Ein Upgrade auf das Flugblatt 1.0.0-beta wird ebenfalls empfohlen, aber dies scheint nicht mit der aktuellen Mapbox kompatibel zu sein ...
Jede Hilfe bei der Überwindung dieses Problems wäre sehr willkommen.
Ich habe ein paar tausend Marker in IE (9+) geladen und habe dieses Problem nicht bemerkt, aber ich benutze 'setFilter' nicht wirklich. Normalerweise füge ich Marker in Chunks über AJAX hinzu. Verbessert sich das überhaupt, wenn statt "L.geoJson (data)" mit 'geoJsonLayer.addData()' '? Kannst du auch bitte mit deinem Beispielcode eine Fiedel machen, damit wir testen und profilieren können? – nothingisnecessary
Ich habe das gleiche Leistungsproblem im Edge. –