From 2b64b1db6877f52ea2958c6aafb0e4644fbcfe13 Mon Sep 17 00:00:00 2001 From: scottjehl Date: Wed, 19 Jan 2011 12:40:32 -0500 Subject: [PATCH] Revised the Nokia support fallback. It turns out that Nokia supports the documentElement property but does not define document.compatMode. Adding this third fallback allows Nokia to run jQuery error-free and return proper values for window width and height. --- src/dimensions.js | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/dimensions.js b/src/dimensions.js index 9d8c354..e2d411d 100644 --- a/src/dimensions.js +++ b/src/dimensions.js @@ -35,8 +35,10 @@ jQuery.each([ "Height", "Width" ], function( i, name ) { if ( jQuery.isWindow( elem ) ) { // Everyone else use document.documentElement or document.body depending on Quirks vs Standards mode - return elem.document.compatMode === "CSS1Compat" && elem.document.documentElement[ "client" + name ] || - elem.document.body[ "client" + name ] || window.screen && window.screen[ name.toLowerCase() ]; + // 3rd condition allows Nokia support, as it supports the docElem prop but not CSS1Compat + var docElemProp = elem.document.documentElement[ "client" + name ]; + return elem.document.compatMode === "CSS1Compat" && docElemProp || + elem.document.body[ "client" + name ] || docElemProp; // Get document width or height } else if ( elem.nodeType === 9 ) { -- 1.7.10.4