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

Reply via email to