Cool! I got code execution 50% faster! Thanks. d
On 8 Lug, 09:27, Darko Romanov <darko.roma...@gmail.com> wrote: > Ok thanks. I'm going to try it. Didn't know about the $... variables > convention. > > d > > On 7 Lug, 19:35, "Michael Geary" <m...@mg.to> wrote: > > > > > What you wrote would work, and it would be faster than the original code, > > but you're making an unnecessary $() call each time you use $(list). > > Instead, do it like this: > > > var $list = $("ul.list"); > > > $list.find("li.selected").addClass("blah"); > > > The $ in $list doesn't have any special meaning; it's just a naming > > convention to help remember that $list is already a jQuery object and > > doesn't need $() when used. > > > -Mike > > > > From: Darko Romanov > > > Sent: Tuesday, July 07, 2009 8:56 AM > > > To: jQuery (English) > > > Subject: [jQuery] Caching nodes > > > > Hi there, > > > > I'm developing a site that has some js visual effects and > > > many graphic elements to move. So I have to take care of each > > > single query on the DOM as it could take too much time to be > > > executed, resulting in a flicking animation. > > > > I thought I could cache in memory a node and then querying > > > it, but I can't understand if it made much sense. Something like: > > > > var list = $("ul.list"); > > > > and then executing any query in ul.list in this way: > > > > $(list).find("li.selected").addClass("blah"); > > > > instead of: > > > > $("ul.list li.selected").addClass("blah"); > > > > would it be faster? > > > > tnx