Mam wyszukiwanie, które zwraca JSON, który następnie przekształcam w tabelę HTML w JavaScript. To wielokrotnie wywołuje metodę jQuery.append(), raz dla każdego wiersza. Mam nowoczesną maszynę, a czas reakcji Firefoksa jest akceptowalny. Ale w IE 8 jest nieznośnie powolny.Jaki jest najskuteczniejszy sposób zarządzania dużymi zestawami danych za pomocą Javascript/jQuery w IE?
Postanowiłem przenieść transformację danych z HTML do PHP po stronie serwera, zmieniając typ zwracania z JSON na HTML. Teraz, zamiast wielokrotnie wywoływać czas jQuery.append(), raz wywołuję metodę jQuery.html() z całą tabelą. Zauważyłem, że Firefox jest szybszy, ale IE wolniej.
Te wyniki są anegdotyczne i nie przeprowadziłem żadnego testu porównawczego, ale wydajność IE jest bardzo rozczarowująca. Czy jest coś, co mogę zrobić, aby przyspieszyć manipulację dużymi ilościami danych w IE, czy też po prostu zły pomysł na przetwarzanie bardzo dużej ilości danych jednocześnie za pomocą AJAX/Javascript?
Masz absolutną rację. ... ale jak szybko "jesteś w oknie roboczym"? –
Zakładam, że masz na myśli sprawdzanie pozycji przewijania. Samo sprawdzenie jest dość szybkie, szczególnie jeśli ustawisz go na mały czas oczekiwania. Rzuć okiem na przykłady SlickGrid - siatka renderuje 50 000 wierszy, ale jest niezwykle szybka i responsywna. – Tin
Właśnie skończyłem wdrażanie SlickGrid i to jest niesamowite. Bez wątpienia jest to najpotężniejsza wtyczka jQuery, z której korzystałem, i uratowało mnie to przed koniecznością przeprojektowania dużego fragmentu mojego projektu, aby poradzić sobie z IE. Dzięki! –