Added some significant speed-ups to height/width checks, thanks to some code and investigation by Mike Helgeson. Fixes #3082.
This commit is contained in:
parent
7f1eb1c14f
commit
848c45ea17
2 changed files with 22 additions and 17 deletions
|
@ -2,22 +2,21 @@
|
|||
jQuery.each([ "Height", "Width" ], function(i, name){
|
||||
|
||||
var tl = i ? "Left" : "Top", // top or left
|
||||
br = i ? "Right" : "Bottom"; // bottom or right
|
||||
br = i ? "Right" : "Bottom", // bottom or right
|
||||
lower = name.toLowerCase();
|
||||
|
||||
// innerHeight and innerWidth
|
||||
jQuery.fn["inner" + name] = function(){
|
||||
return this[ name.toLowerCase() ]() +
|
||||
num(this, "padding" + tl) +
|
||||
num(this, "padding" + br);
|
||||
return this[0] ?
|
||||
jQuery.css( this[0], lower, false, "padding" ) :
|
||||
null;
|
||||
};
|
||||
|
||||
// outerHeight and outerWidth
|
||||
jQuery.fn["outer" + name] = function(margin) {
|
||||
return this["inner" + name]() +
|
||||
num(this, "border" + tl + "Width") +
|
||||
num(this, "border" + br + "Width") +
|
||||
(margin ?
|
||||
num(this, "margin" + tl) + num(this, "margin" + br) : 0);
|
||||
return this[0] ?
|
||||
jQuery.css( this[0], lower, false, margin ? "margin" : "border" ) :
|
||||
null;
|
||||
};
|
||||
|
||||
var type = name.toLowerCase();
|
||||
|
@ -47,4 +46,4 @@ jQuery.each([ "Height", "Width" ], function(i, name){
|
|||
this.css( type, typeof size === "string" ? size : size + "px" );
|
||||
};
|
||||
|
||||
});
|
||||
});
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue