In order to do that, we'd have to maintain a list of elements who have
global handlers bound - which is what we did previously and which is
what caused all the leaks and slowdowns.

--John

On 8/28/07, Aaron Heimlich <[EMAIL PROTECTED]> wrote:
> I wonder, would it be possible to optimize
>
> jQuery("*")
>
> into
>
> context.getElementsByTagName("*")
>
>
> On 8/28/07, John Resig < [EMAIL PROTECTED]> wrote:
> >
> > Yep, unfortunately there's really no way around that. We had to make
> > that change so that there wasn't massive leaks and slowdowns on adding
> > events. IMO, having fast event adding and no leaks is better than
> > having slow global event triggering (which is pretty rare).
> >
> > I should clarify that we only run this query if a listener has been
> > bound for it. If not, there's no hit.
> >
> > --John
> >
> > On 8/28/07, Fan <[EMAIL PROTECTED]> wrote:
> > >
> > > jquery-1.1.4.js line 1520:
> > > // Only trigger if we've ever bound an event for it
> > > if ( this.global[type] )
> > >         jQuery("*").add([window, document]).trigger(type, data);
> > >
> > > I think "jQuery("*")" is slow when the page contains large amount of
> > > elements. This makes some global events very slow ( ajaxStart with
> > > blockUI ). In 1.1.3.1, elements with global event are stored in an
> > > array.
> > > Any ideas?
> > >
> > >
> >
>
>
>
> --
> Aaron Heimlich
> Web Developer
> [EMAIL PROTECTED]
> http://aheimlich.freepgs.com

Reply via email to