Ho una ricerca che restituisce JSON, che poi trasformo in una tabella HTML in Javascript. Chiama ripetutamente il metodo jQuery.append(), una volta per ogni riga. Ho una macchina moderna e il tempo di risposta di Firefox è accettabile. Ma in IE 8 è insopportabilmente lento.Qual è il modo più efficiente per gestire dataset di grandi dimensioni con Javascript/jQuery in IE?
Ho deciso di spostare la trasformazione da dati in HTML nel PHP lato server, cambiando il tipo di ritorno da JSON a HTML. Ora, anziché chiamare ripetutamente il tempo jQuery.append(), chiamo il metodo jQuery.html() una volta con l'intera tabella. Ho notato che Firefox è diventato più veloce, ma IE è diventato più lento.
Questi risultati sono aneddotici e non ho eseguito alcun benchmarking, ma le prestazioni di IE sono molto deludenti. C'è qualcosa che posso fare per accelerare la manipolazione di grandi quantità di dati in IE o è semplicemente una cattiva idea elaborare molti dati contemporaneamente con AJAX/Javascript?
Hai assolutamente ragione. ... ma quanto è veloce "sei nella finestra"? –
Immagino tu intenda il controllo della posizione di scorrimento. Il controllo in sé è piuttosto veloce, specialmente se lo metti su un timeout piccolo. Dai un'occhiata agli esempi SlickGrid: la griglia esegue il rendering di 50.000 righe, tuttavia è estremamente veloce e reattiva. – Tin
Ho appena finito di implementare SlickGrid ed è sorprendente. È senza dubbio il più potente plugin jQuery che abbia mai usato, e mi ha salvato dal dover ridisegnare un grosso pezzo del mio progetto per trattare con IE. Grazie! –