Vamos ver como usar o jQuery Selector Cache Plugin para guardar objectos jQuery em cache.
jQuery Selector Cache é um plugin simples que permite ir buscar elementos da mesma forma que ao usar $() excepto com um mecanismo adicional de caching.
Em vez de usarem $(".row")
usam $.q(".row")
.
O selector será guardado em cache da primeira vez que o pedem e nas chamadas seguintes será obtido directamente da cache evitando pesquisas desnecessárias.
Foi inspirado pelo $-cache-with-find.js de Justin Sternberg.
Porquê usar?
Porque pesquisas por selectores podem ser custosas e só devem ser feitas da primeira vez ou quando houverem mudanças no DOM.
Normalmente usam-se variáveis auxiliares, mas ao acoplar isto ao jQuery ficamos com uma cache global.
Como usar
Além de usarem $.q(selector)
para ir buscar elementos também podem passar o contexto no segundo argumento:
$.q(selector, context);
Para forçar uma actualização da cache usem um booliano como segundo ou terceiro argumento:
$.q(selector, true);
$.q(selector, context, true);
Para limpar ou actualizar manualmente a cache podem aceder directamente à mesma:
// clear cache
$.selectorCache = {};
// manually update cache
$.selectorCache[selector] = $(selector);
Mais detalhes
Visitem o repositório no GitHub para obterem o código fonte ou para mais detalhes.