Fixed #1701 by passing through the arguments as suggested.
[jquery.git] / src / core.js
index b9d5247..0ebc61d 100644 (file)
@@ -43,7 +43,7 @@ jQuery.fn = jQuery.prototype = {
                        return this;
 
                // Handle HTML strings
-               } else if ( typeof selector  == "string" ) {
+               } else if ( typeof selector == "string" ) {
                        // Are we dealing with HTML string or an ID?
                        var match = quickExpr.exec( selector );
 
@@ -194,6 +194,9 @@ jQuery.fn = jQuery.prototype = {
        },
 
        css: function( key, value ) {
+               // ignore negative width and height values
+               if ( (key == 'width' || key == 'height') && parseFloat(value) < 0 )
+                       value = undefined;
                return this.attr( key, value, "curCSS" );
        },
 
@@ -360,7 +363,7 @@ jQuery.fn = jQuery.prototype = {
 
                        if ( this.length ) {
                                var elem = this[0];
-                       
+
                                // We need to handle select boxes special
                                if ( jQuery.nodeName( elem, "select" ) ) {
                                        var index = elem.selectedIndex,
@@ -393,7 +396,7 @@ jQuery.fn = jQuery.prototype = {
                                        
                                // Everything else, we just grab the value
                                } else
-                                       return this[0].value.replace(/\r/g, "");
+                                       return (this[0].value || "").replace(/\r/g, "");
 
                        }
 
@@ -755,7 +758,7 @@ jQuery.extend({
                        elem.style[ name ] = elem.style[ "old" + name ];
        },
 
-       css: function( elem, name ) {
+       css: function( elem, name, force ) {
                if ( name == "height" || name == "width" ) {
                        var old = {}, height, width;
 
@@ -805,7 +808,7 @@ jQuery.extend({
                                width;
                }
 
-               return jQuery.curCSS( elem, name );
+               return jQuery.curCSS( elem, name, force );
        },
 
        curCSS: function( elem, name, force ) {
@@ -1321,7 +1324,7 @@ jQuery.each([ "Height", "Width" ], function(i, name){
                        this[0] == document ?
                                // Either scroll[Width/Height] or offset[Width/Height], whichever is greater (Mozilla reports scrollWidth the same as offsetWidth)
                                Math.max( document.body[ "scroll" + name ], document.body[ "offset" + name ] ) :
-        
+
                                // Get or set width or height on the element
                                size == undefined ?
                                        // Get width or height on the element