git.asbjorn.biz
/
jquery.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (from parent 1:
62c83a7
)
Opera doesn't give height/width of display: none elements with getComputedStyle but...
author
jeresig
<jeresig@gmail.com>
Wed, 3 Nov 2010 19:39:28 +0000
(15:39 -0400)
committer
jeresig
<jeresig@gmail.com>
Wed, 3 Nov 2010 19:39:28 +0000
(15:39 -0400)
src/css.js
patch
|
blob
|
history
diff --git
a/src/css.js
b/src/css.js
index
0998657
..
0f14914
100644
(file)
--- a/
src/css.js
+++ b/
src/css.js
@@
-12,8
+12,8
@@
var ralpha = /alpha\([^)]*\)/i,
cssHeight = [ "Top", "Bottom" ],
curCSS,
cssHeight = [ "Top", "Bottom" ],
curCSS,
- // cache check for defaultView.getComputedStyle
- getComputedStyle = document.defaultView && document.defaultView.getComputedStyle,
+ getComputedStyle,
+ currentStyle,
fcamelCase = function( all, letter ) {
return letter.toUpperCase();
fcamelCase = function( all, letter ) {
return letter.toUpperCase();
@@
-172,6
+172,10
@@
jQuery.each(["height", "width"], function( i, name ) {
if ( val <= 0 ) {
val = curCSS( elem, name, name );
if ( val <= 0 ) {
val = curCSS( elem, name, name );
+ if ( val === "0px" && currentStyle ) {
+ val = currentStyle( elem, name, name );
+ }
+
if ( val != null ) {
return val;
}
if ( val != null ) {
return val;
}
@@
-231,8
+235,8
@@
if ( !jQuery.support.opacity ) {
};
}
};
}
-if ( getComputedStyle ) {
- curCSS = function( elem, newName, name ) {
+if ( document.defaultView && document.defaultView.getComputedStyle ) {
+ getComputedStyle = function( elem, newName, name ) {
var ret, defaultView, computedStyle;
name = name.replace( rupper, "-$1" ).toLowerCase();
var ret, defaultView, computedStyle;
name = name.replace( rupper, "-$1" ).toLowerCase();
@@
-250,9
+254,10
@@
if ( getComputedStyle ) {
return ret === "" ? "auto" : ret;
};
return ret === "" ? "auto" : ret;
};
+}
-} else if ( document.documentElement.currentStyle ) {
- curCSS = function( elem, name ) {
+if ( document.documentElement.currentStyle ) {
+ currentStyle = function( elem, name ) {
var left, rsLeft, ret = elem.currentStyle && elem.currentStyle[ name ], style = elem.style;
// From the awesome hack by Dean Edwards
var left, rsLeft, ret = elem.currentStyle && elem.currentStyle[ name ], style = elem.style;
// From the awesome hack by Dean Edwards
@@
-279,6
+284,8
@@
if ( getComputedStyle ) {
};
}
};
}
+curCSS = getComputedStyle || currentStyle;
+
function getWH( elem, name, extra ) {
var which = name === "width" ? cssWidth : cssHeight,
val = name === "width" ? elem.offsetWidth : elem.offsetHeight;
function getWH( elem, name, extra ) {
var which = name === "width" ? cssWidth : cssHeight,
val = name === "width" ? elem.offsetWidth : elem.offsetHeight;