Fix #10796. Allow IE<9 to retrieve uncomputed styles.

This commit is contained in:
Mike Sherov 2011-12-06 16:44:32 -05:00 committed by Dave Methvin
parent 64df670a81
commit 6aa4095ed6
2 changed files with 26 additions and 3 deletions

View File

@ -5,7 +5,7 @@ var ralpha = /alpha\([^)]*\)/i,
// fixed for IE9, see #8346
rupper = /([A-Z]|^ms)/g,
rnumpx = /^-?\d+(?:px)?$/i,
rnum = /^-?\d/,
rnumnopx = /^-?\d+(?!px)[^\d\s]+$/i,
rrelNum = /^([\-+])=([\-+.\de]+)/,
cssShow = { position: "absolute", visibility: "hidden", display: "block" },
@ -280,7 +280,7 @@ if ( document.documentElement.currentStyle ) {
// Avoid setting ret to empty string here
// so we don't default to auto
if ( ret === null && style && (uncomputed = style[ name ]) ) {
if ( ret == null && style && (uncomputed = style[ name ]) ) {
ret = uncomputed;
}
@ -289,7 +289,7 @@ if ( document.documentElement.currentStyle ) {
// If we're not dealing with a regular pixel number
// but a number that has a weird ending, we need to convert it to pixels
if ( !rnumpx.test( ret ) && rnum.test( ret ) ) {
if ( rnumnopx.test( ret ) ) {
// Remember the original values
left = style.left;

View File

@ -511,6 +511,29 @@ test("can't get css for disconnected in IE<9, see #10254 and #8388", function()
equal( div.css( "top" ), "10px", "can't get top in IE<9, see #8388" );
});
test("can't get background-position in IE<9, see #10796", function() {
var div = jQuery( "<div/>" ).appendTo( "#qunit-fixture" ),
units = [
"0 0",
"12px 12px",
"13px 12em",
"12em 13px",
"12em center",
"+12em center",
"12.2em center",
"center center",
],
l = units.length,
i = 0;
expect( l );
for( ; i < l; i++ ) {
div.css( "background-position", units [ i ] );
ok( div.css( "background-position" ), "can't get background-position in IE<9, see #10796" );
}
});
test("Do not append px to 'fill-opacity' #9548", 1, function() {
var $div = jQuery("<div>").appendTo("#qunit-fixture");