Skip to content
Permalink
Browse files

Merge branch 'fix_8402' of https://github.com/lrbabe/jquery into lrba…

…be-fix_8402
  • Loading branch information...
jeresig committed Apr 12, 2011
2 parents 430d9e0 + 272b8d6 commit db80ad94d5f8d008b44b4b4b13157b5aeea14c4f
Showing with 26 additions and 6 deletions.
  1. +12 −6 src/css.js
  2. +14 −0 test/unit/css.js
@@ -123,18 +123,24 @@ jQuery.extend({

css: function( elem, name, extra ) {
// Make sure that we're working with the right name
var ret, origName = jQuery.camelCase( name ),
hooks = jQuery.cssHooks[ origName ];

name = jQuery.cssProps[ origName ] || origName;
var ret,
hooks;

name = jQuery.camelCase( name );
hooks = jQuery.cssHooks[ name ];
name = jQuery.cssProps[ name ] || name;
// cssFloat needs a special treatment
if ( name === 'cssFloat' ) {
name = 'float';
}

// If a hook was provided get the computed value from there
if ( hooks && "get" in hooks && (ret = hooks.get( elem, true, extra )) !== undefined ) {
return ret;

// Otherwise, if a way to get the computed value exists, use that
} else if ( curCSS ) {
return curCSS( elem, name, origName );
return curCSS( elem, name );
}
},

@@ -274,7 +280,7 @@ jQuery(function() {
});

if ( document.defaultView && document.defaultView.getComputedStyle ) {
getComputedStyle = function( elem, newName, name ) {
getComputedStyle = function( elem, name ) {
var ret, defaultView, computedStyle;

name = name.replace( rupper, "-$1" ).toLowerCase();
@@ -395,3 +395,17 @@ test("$().css override !important css declarations (bug #4427)", function(){
equals( div.css("background-color"), "rgb(0, 255, 0)", "Background color is overrided to rgb(0, 255, 0)" );

});

test("jQuery.cssProps behavior, (bug #8402)", function() {
var div = jQuery( "<div>" ).appendTo(document.body).css({
position: "absolute",
top: 0,
left: 10
});
jQuery.cssProps.top = "left";
equal( div.css("top"), "10px", "the fixed property is used when accessing the computed style");
div.css("top", "100px");
equal( div[0].style.left, "100px", "the fixed property is used when setting the style");
// cleanup jQuery.cssProps
jQuery.cssProps.top = undefined;
});

0 comments on commit db80ad9

Please sign in to comment.
You can’t perform that action at this time.