Side navigation
#1351 closed bug (fixed)
Opened July 04, 2007 12:16AM UTC
Closed August 21, 2007 05:44AM UTC
Selection of tags slower in 1.1.3 than 1.1.2
Reported by: | krudd | Owned by: | john |
---|---|---|---|
Priority: | major | Milestone: | 1.1.4 |
Component: | core | Version: | 1.1.3 |
Keywords: | slow tag selection | Cc: | |
Blocked by: | Blocking: |
Description
So far I've only looked at the speed decrease when selecting 'input'
elements, so it may be isolated to them or something general.
(You'll need Firebug on Firefox, Firebug lite is included though for other browsers.)
Here's a page with using 1.1.2:
http://krudd.net/jquery113speed/jquery_elementtest_112.html
Result: setup: 781ms
Here's the same page using 1.1.3:
http://krudd.net/jquery113speed/jquery_elementtest_113.html
Result: setup: 1937ms
And for kicks I looked at using "straight" DOM methods to select the
'inputs' (getElementsByTagName) and 1.1.3:
http://krudd.net/jquery113speed/jquery_elementtest_113_dom.html
Result: setup: 531ms
I haven't had time to dig through the 1.1.3 source to see where the
slowdown could be occurring.
Under IE there is a similar, though markedly smaller, slow down
between 1.1.2 and 1.1.3.
Profiling in firebug, it seems most of the time is spent inside find.
For a simple tag search 4 non trivial and fixed regex are compiled on each find execution. They are:
Moving them from find to properties of the jQuery object made 1.1.3 faster then 1.1.2 in my tests on ff for windows.