Domanda

Sono utilizzando il plugin jQuery tablesorter in un modo molto semplice, per aggiungere sortability alle prime quattro colonne di una tabella di cinque colonne. La larghezza massima di una delle colonne è di 255 caratteri, e più è più ristretta di quella.

Questo funziona bene sul set di risultati più piccoli, ma se il mio tavolo (sulla base di una query di ricerca) cresce oltre ~ 300 righe, c'è un lungo ritardo dopo viene visualizzata la pagina prima che le modifiche DOM apportate dalla funzione tablesorter sono visibili, e spesso ottengo il seguente errore del browser (in Firefox):

  

Uno script in questa pagina potrebbe essere occupato, o potrebbe aver smesso di rispondere. È possibile interrompere lo script   ora, aprire lo script nel debugger, o lasciare che lo script continuare.

     

Script: https://foo.com/bar /js/jquery-1.3.2.min.js:19

C'è solo una limitazione pratica per le dimensioni di una tabella ordinabile?

È stato utile?

Soluzione

Questo dipende dalla velocità della macchina e quali navigatore persone stanno usando. Per ottenere buoni numeri che avrebbe dovuto testare l'utilizzo della macchina più lenta che ci si aspetta la gente a usare e trovano il più grande insieme di dati che potrebbero essere allineati. Anche i dati che vengono ordinati potrebbero richiedere più o meno lungo quantità di tempo a seconda dell'ordine corrente dei dati.

Ci sono un sacco di variabili a questo problema.

Altri suggerimenti

Qualunque attuazione ordinamento ha un limite pratico per tempo reale smistamento.

Ho visto molti script di ordinamento come questo si combinano anche una porzione di impaginazione in modo che solo il 50 o giù di lì sono mostrati in un momento. Io non sono certo quello che algoritmo di ordinamento lo script sta usando ma alcuni di essi può essere molto lento.

Questa tabella mostra la complessità di alcuni algoritmi comuni di ordinamento.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top