Make sure that height/width methods return numbers instead of strings.

This commit is contained in:
jeresig 2010-09-09 16:33:05 -04:00
parent c168c30a6a
commit cb3a9c14f1

View file

@ -8,14 +8,14 @@ jQuery.each([ "Height", "Width" ], function( i, name ) {
// innerHeight and innerWidth // innerHeight and innerWidth
jQuery.fn["inner" + name] = function() { jQuery.fn["inner" + name] = function() {
return this[0] ? return this[0] ?
jQuery.css( this[0], type, undefined, false, "padding" ) : parseFloat( jQuery.css( this[0], type, undefined, false, "padding" ), 10 ) :
null; null;
}; };
// outerHeight and outerWidth // outerHeight and outerWidth
jQuery.fn["outer" + name] = function( margin ) { jQuery.fn["outer" + name] = function( margin ) {
return this[0] ? return this[0] ?
jQuery.css( this[0], type, undefined, false, margin ? "margin" : "border" ) : parseFloat( jQuery.css( this[0], type, undefined, false, margin ? "margin" : "border" ), 10 ) :
null; null;
}; };
@ -50,7 +50,7 @@ jQuery.each([ "Height", "Width" ], function( i, name ) {
// Get or set width or height on the element // Get or set width or height on the element
size === undefined ? size === undefined ?
// Get width or height on the element // Get width or height on the element
jQuery.css( elem, type ) : parseFloat( jQuery.css( elem, type ), 10 ) :
// Set the width or height on the element (default to pixels if value is unitless) // Set the width or height on the element (default to pixels if value is unitless)
this.css( type, typeof size === "string" ? size : size + "px" ); this.css( type, typeof size === "string" ? size : size + "px" );