Permalink
Browse files

CSS: simplify hack of css getter for the computed values

  • Loading branch information...
markelog committed Dec 18, 2014
1 parent d9d8906 commit dac716ca65a83bab2449ffa35c43b4b52e26a0c1
Showing with 18 additions and 10 deletions.
  1. +2 −10 src/css/curCSS.js
  2. +5 −0 test/data/testsuite.css
  3. +11 −0 test/unit/css.js
View
@@ -72,7 +72,7 @@ if ( window.getComputedStyle ) {
};
curCSS = function( elem, name, computed ) {
var left, rs, rsLeft, ret,
var left, ret,
style = elem.style;
computed = computed || getStyles( elem );
@@ -84,7 +84,7 @@ if ( window.getComputedStyle ) {
ret = style[ name ];
}
// From the awesome hack by Dean Edwards
// Simplified hack by Dean Edwards
// http://erik.eae.net/archives/2007/07/27/18.54.15/#comment-102291
// If we're not dealing with a regular pixel number
@@ -97,21 +97,13 @@ if ( window.getComputedStyle ) {
// Remember the original values
left = style.left;
rs = elem.runtimeStyle;
rsLeft = rs && rs.left;
// Put in the new values to get a computed value out
if ( rsLeft ) {
rs.left = elem.currentStyle.left;
}
style.left = name === "fontSize" ? "1em" : ret;
ret = style.pixelLeft + "px";
// Revert the changed values
style.left = left;
if ( rsLeft ) {
rs.left = rsLeft;
}
}
// Support: IE<9
View
@@ -163,3 +163,8 @@ section { background:#f0f; display:block; }
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
}
.get-computed-value {
padding-left: 50%;
width: 20%;
font-size: 2em;
}
View
@@ -119,6 +119,17 @@ test("css(String|Hash)", function() {
"Make sure that a string z-index is returned from css('z-index') (#14432)." );
});
test( "css(String) computed values", 3, function() {
var div = jQuery( "<div/>" ).addClass( "get-computed-value" ),
fixture = document.getElementById( "qunit-fixture" );
div.appendTo( fixture );
strictEqual( div.css( "padding-left" ), "500px", "should get computed value for padding-left property" );
strictEqual( div.css( "width" ), "200px", "should get computed value for width property" );
strictEqual( div.css( "font-size" ), "32px", "should get computed value for font-size property" );
});
test( "css() explicit and relative values", 29, function() {
var $elem = jQuery("#nothiddendiv");

0 comments on commit dac716c

Please sign in to comment.