From c8cc1b35e400ef125597dfa7d84ee63553f6501d Mon Sep 17 00:00:00 2001 From: scottjehl Date: Tue, 2 Aug 2011 18:38:35 -0400 Subject: [PATCH] Make sure body is defined before attempting to use its properties. This check prevents an error from occurring when the width() or height() methods are called before the body is defined in browsers that return false on the first condition and proceed on to the second. For example, simply calling $( window ).width() from a script in the HEAD will throw an error in Nokia webkit browsers without this check in place. --- src/dimensions.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/dimensions.js b/src/dimensions.js index 88fa17506..d54776536 100644 --- a/src/dimensions.js +++ b/src/dimensions.js @@ -38,9 +38,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 // 3rd condition allows Nokia support, as it supports the docElem prop but not CSS1Compat - var docElemProp = elem.document.documentElement[ "client" + name ]; + var docElemProp = elem.document.documentElement[ "client" + name ], + body = elem.document.body; return elem.document.compatMode === "CSS1Compat" && docElemProp || - elem.document.body[ "client" + name ] || docElemProp; + body && body[ "client" + name ] || docElemProp; // Get document width or height } else if ( elem.nodeType === 9 ) { -- 2.39.5