2010-03-15 5 views
5

Acabo de llegar al final de un gran proyecto de desarrollo. Estábamos en una línea de tiempo ajustada, por lo que mucha "optimización" fue "aplazada". Ahora que cumplimos con nuestra fecha límite, volveremos e intentaremos optimizar las cosas.jQuery Optimizations

Mis preguntas son las siguientes: ¿Cuáles son algunas de las cosas más importantes que busca al optimizar sitios web de jQuery? Alternativamente, me encantaría escuchar sobre sitios/listas que tienen un asesoramiento particularmente bueno para optimizar jQuery.

Ya he leído algunos artículos, http://www.tvidesign.co.uk/blog/improve-your-jquery-25-excellent-tips.aspx fue una lectura especialmente buena.

+2

1 de los "25 consejos excelentes" sitio web – ram

+0

duplicado exacto: http://stackoverflow.com/questions/1587375/what-are-some- quick-tips-for-increasing-jquery-performance –

+0

He encontrado la mejor optimización para seguir el ID> nombre del elemento> nombre de clase selector de precedencia. Si es posible, use una identificación si puede; de ​​lo contrario, use y element; de lo contrario, use una clase. #my_id es mejor que div.my_class es mejor que .myclass – aepheus

Respuesta

1

mayoría miro selectores que se repiten themselfs .. la mayoría de las veces estos se pueden guardar en una variable y se utilizan una y otra vez, por ejemplo:

$('.some_class').doSomthing(); 
$('.some_class').doSomethingElse(); 

puede transformarse en:

selectedItems = $('.some_class'); 
selectedItems.doSomething(); selectedItems.doSomethingElse(); 

de esta manera el selector pasa por el DOM una vez ... entonces puede continuar usando la variable como un objeto jquery gracias a que cada método jquery devuelve el objeto jquery.

Sólo un consejo de muchos por ahí ...

+1

O en '$ ('. Some_class'). DoSomething(). DoSomethingElse()'. Puede parecer incómodo al principio, pero es una característica realmente útil. – Felix

+1

sí, por supuesto, tiene razón, pero no siempre funciona para todas las situaciones ... generalmente lo hace, pero en algunos casos extremos es posible que necesite operaciones separadas – Ken

+0

Si bien algo así ayudaría significativamente a reducir los gastos generales (al hacer una llamada de selector) en lugar de dos), supongo que cambiar a $ ('td.some_class') en muchos contextos daría más de un bono que el encadenamiento. – aepheus