From: Rick Waldron Date: Mon, 18 Jun 2012 17:26:46 +0000 (-0400) Subject: Update document.defaultView.getComputedStyle. Fixes #10373 X-Git-Tag: 1.8b1~26 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=f7ee1f6e59f0b465f5f64bf6ac52108e445efaac;p=jquery.git Update document.defaultView.getComputedStyle. Fixes #10373 --- diff --git a/src/css.js b/src/css.js index d23284a1c..ac70a98d0 100644 --- a/src/css.js +++ b/src/css.js @@ -274,15 +274,17 @@ jQuery.extend({ } }); -if ( document.defaultView && document.defaultView.getComputedStyle ) { +// NOTE: To any future maintainer, we've used both window.getComputedStyle +// and window.getComputedStyle here to produce a better gzip size +if ( window.getComputedStyle ) { curCSS = function( elem, name ) { - var ret, defaultView, computedStyle, width, + var ret, width, + computed = getComputedStyle( elem, null ), style = elem.style; - if ( (defaultView = elem.ownerDocument.defaultView) && - (computedStyle = defaultView.getComputedStyle( elem, null )) ) { + if ( computed ) { - ret = computedStyle[ name ]; + ret = computed[ name ]; if ( ret === "" && !jQuery.contains( elem.ownerDocument.documentElement, elem ) ) { ret = jQuery.style( elem, name ); } @@ -293,7 +295,7 @@ if ( document.defaultView && document.defaultView.getComputedStyle ) { if ( !jQuery.support.pixelMargin && rmargin.test( name ) && rnumnonpx.test( ret ) ) { width = style.width; style.width = ret; - ret = computedStyle.width; + ret = computed.width; style.width = width; } } diff --git a/src/support.js b/src/support.js index 06170a39b..334175ff6 100644 --- a/src/support.js +++ b/src/support.js @@ -210,6 +210,11 @@ jQuery.support = (function() { div.style.cssText = "box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;"; support.boxSizing = ( div.offsetWidth === 4 ); support.doesNotIncludeMarginInBodyOffset = ( body.offsetTop !== 1 ); + + // NOTE: To any future maintainer, window.getComputedStyle was used here + // instead of getComputedStyle because it gave a better gzip size. + // The difference between window.getComputedStyle and getComputedStyle is + // 7 bytes if ( window.getComputedStyle ) { support.pixelMargin = ( window.getComputedStyle( div, null ) || {} ).marginTop !== "1%"; support.pixelPosition = ( window.getComputedStyle( div, null ) || {} ).top !== "1%";