From: Brandon Aaron <brandon.aaron@gmail.com>
Date: Wed, 22 Apr 2009 04:39:44 +0000 (+0000)
Subject: fix for #3546. css now works with other windows than just the one it was loaded in.
X-Git-Url: http://git.asbjorn.biz/?a=commitdiff_plain;h=8be57929750eac38b0eb331cd99def3d88302cc1;p=jquery.git

fix for #3546. css now works with other windows than just the one it was loaded in.
---

diff --git a/src/css.js b/src/css.js
index 9551bc9..b8a1350 100644
--- a/src/css.js
+++ b/src/css.js
@@ -1,7 +1,7 @@
 // exclude the following css properties to add px
 var exclude = /z-?index|font-?weight|opacity|zoom|line-?height/i,
-	// cache defaultView
-	defaultView = document.defaultView || {},
+	// cache check for defaultView.getComputedStyle
+	getComputedStyle = document.defaultView && document.defaultView.getComputedStyle,
 	// normalize float css property
 	styleFloat = jQuery.support.cssFloat ? "cssFloat" : "styleFloat";
 
@@ -140,7 +140,7 @@ jQuery.extend({
 		if ( !force && style && style[ name ] ) {
 			ret = style[ name ];
 
-		} else if ( defaultView.getComputedStyle ) {
+		} else if ( getComputedStyle ) {
 
 			// Only "float" is needed here
 			if ( /float/i.test( name ) )
@@ -148,7 +148,7 @@ jQuery.extend({
 
 			name = name.replace( /([A-Z])/g, "-$1" ).toLowerCase();
 
-			var computedStyle = defaultView.getComputedStyle( elem, null );
+			var computedStyle = elem.ownerDocument.defaultView.getComputedStyle( elem, null );
 
 			if ( computedStyle )
 				ret = computedStyle.getPropertyValue( name );