He visto una serie de ejemplos de Javascript para colocar encima de una tabla html para poder ordenarlos. El problema es que todos los que he visto e intentado son increíblemente lentos.

Cualquier sugerencia o recomendación para una buena solución de rendimiento.

2
leora 18 sep. 2009 a las 04:09

7 respuestas

La mejor respuesta

He descubierto (solo para uso casual, no mediante ningún análisis intensivo) que el complemento jQuery TableSorter tiene una tasa de rendimiento decente y es bastante avanzado en comparación con cualquiera de las otras soluciones disponibles.

Por supuesto, se basa en jQuery, pero si fuera exigente con la huella, podría analizar el método utilizado por el complemento y crear su propia implementación más ligera.

3
gpmcadam 18 sep. 2009 a las 00:16

Estaba usando el plugin W3 School Sort y fue muy lento con una tabla de 250 filas. No responde por unos buenos 5 segundos.

Cambió a tablesorter.com como se menciona en las respuestas. Funciona de maravilla. Mucho, mucho más rápido. No hay que esperar ahora.

0
Etienne Dupuis 26 mar. 2018 a las 15:13

He pasado mucho tiempo evaluando varias bibliotecas de tablas avanzadas, incluida la jquery, la dojo, la tabla de datos YUI y la tabla de desplazamiento de paginación de GWT. No estaba satisfecho con el rendimiento de ninguno de ellos para tablas con miles de filas (y creo que la paginación también es una mala solución).
Llegué a la conclusión de que flash es el camino a seguir con este tipo de escenario.

Se puede encontrar un sitio que da un ejemplo de una tabla flash con 10000, 100000 y un millón de filas aquí.

También hay este sitio, que le permite comparar el rendimiento de una implementación de JavaScript y flash de un Mesa avanzada.

1
Chi 18 sep. 2009 a las 02:06

Quizás Javascript no sea la solución aquí, entonces podría ordenar el lado del servidor o considerar una solución basada en flex / actionscript.

0
Shane C. Mason 18 sep. 2009 a las 00:19

La forma más rápida de ordenar que encontré es en realidad solo ordenar las filas de la tabla. Si mueve una celda en el DOM, se moverá toda la fila y, por lo tanto, se ordenará.

Aquí hay una muestra de cómo hacer esto, ya que no recuerdo el artículo que leí acerca de hacer esto originalmente. http://www.eggheadcafe.com/community/aspnet/ 3/10051794 / try-this.aspx

1
James Black 18 sep. 2009 a las 00:29

¿Has probado el clasificador de tablas (desarrollado por jQuery)?

Compruébelo en: http://tablesorter.com/docs/

Es bastante fácil de usar.

3
Waleed Amjad 18 sep. 2009 a las 00:17

Si esto es para una aplicación web y tiene muchos datos, puede tener más sentido ordenar el lado del servidor usando SQL o cualquier ORM que esté usando.

2
Mark A. Nicolosi 18 sep. 2009 a las 00:14