Skip to main content

Bug Tracker

Side navigation

#14979 closed bug (fixed)

Opened April 09, 2014 11:43AM UTC

Closed April 18, 2014 02:15PM UTC

Order of conditions causes unnecessary Reflow

Reported by: ksmwsk@gmail.com Owned by:
Priority: high Milestone: 1.11.1/2.1.1
Component: dimensions Version: 2.1.0
Keywords: Cc:
Blocked by: Blocking:
Description

When profiling a web application which features live resizing with its components i found a spot in the jQuery code causing unnecessary reflow.

return elem.offsetWidth === 0 && rdisplayswap.test( jQuery.css( [...]

if i change this so that the test for the display value will be the first one:

return rdisplayswap.test( jQuery.css( [...])) && elem.offsetWidth === 0

Now offsetWidth seems to take much more performance than retrieving the display property and testing it with the regexp.

If this will be confirmed as a valid issue, i would love to contribute this change via github.

Attachments (0)
Change History (4)

Changed April 10, 2014 03:01PM UTC by dmethvin comment:1

component: unfileddimensions
milestone: None1.11.1/2.1.1
priority: undecidedhigh
status: newopen

Awesome, great catch! We'd love a pull request on this.

Changed April 14, 2014 01:02PM UTC by anonymous comment:2

Okay i will add a pull request today.

Changed April 14, 2014 02:56PM UTC by ksmwsk@gmail.com comment:3

I added a pull request here:

https://github.com/jquery/jquery/pull/1560

Changed April 18, 2014 02:15PM UTC by Christian Kosmowski comment:4

resolution: → fixed
status: openclosed

Dimensions: Reverse a check to avoid potential reflows

Fixes #14979

Closes gh-1560

Changeset: 1ca84214cc89d9e5f8af12b18b34426fc91b1b08