git.asbjorn.biz
/
jquery.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Make sure that height/width methods return numbers instead of strings.
[jquery.git]
/
src
/
dimensions.js
diff --git
a/src/dimensions.js
b/src/dimensions.js
index
d3c8418
..
d3561e8
100644
(file)
--- a/
src/dimensions.js
+++ b/
src/dimensions.js
@@
-1,19
+1,21
@@
+(function( jQuery ) {
+
// Create innerHeight, innerWidth, outerHeight and outerWidth methods
// Create innerHeight, innerWidth, outerHeight and outerWidth methods
-jQuery.each([ "Height", "Width" ], function(i, name){
+jQuery.each([ "Height", "Width" ], function( i, name ) {
var type = name.toLowerCase();
// innerHeight and innerWidth
var type = name.toLowerCase();
// innerHeight and innerWidth
- jQuery.fn["inner" + name] = function(){
+ jQuery.fn["inner" + name] = function() {
return this[0] ?
return this[0] ?
- jQuery.css( this[0], type, false, "padding" ) :
+ parseFloat( jQuery.css( this[0], type, undefined, false, "padding" ), 10 ) :
null;
};
// outerHeight and outerWidth
null;
};
// 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, false, margin ? "margin" : "border" ) :
+ parseFloat( jQuery.css( this[0], type, undefined, false, margin ? "margin" : "border" ), 10 ) :
null;
};
null;
};
@@
-23,6
+25,13
@@
jQuery.each([ "Height", "Width" ], function(i, name){
if ( !elem ) {
return size == null ? null : this;
}
if ( !elem ) {
return size == null ? null : this;
}
+
+ if ( jQuery.isFunction( size ) ) {
+ return this.each(function( i ) {
+ var self = jQuery( this );
+ self[ type ]( size.call( this, i, self[ type ]() ) );
+ });
+ }
return ("scrollTo" in elem && elem.document) ? // does it walk and quack like a window?
// Everyone else use document.documentElement or document.body depending on Quirks vs Standards mode
return ("scrollTo" in elem && elem.document) ? // does it walk and quack like a window?
// Everyone else use document.documentElement or document.body depending on Quirks vs Standards mode
@@
-41,10
+50,12
@@
jQuery.each([ "Height", "Width" ], function(i, name){
// Get or set width or height on the element
size === undefined ?
// Get width or height on the element
// Get or set width or height on the element
size === undefined ?
// 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)
this.css( type, typeof size === "string" ? size : size + "px" );
};
});
// Set the width or height on the element (default to pixels if value is unitless)
this.css( type, typeof size === "string" ? size : size + "px" );
};
});
+
+})( jQuery );