May still be broken in Netscape Navigator 4.
if ( elem.nodeType === 9 ) {
// Either scroll[Width/Height] or offset[Width/Height], whichever is greater
doc = elem.documentElement;
+
+ // when a window > document, IE6 reports a offset[Width/Height] > client[Width/Height]
+ // so we can't use max, as it'll choose the incorrect offset[Width/Height]
+ // instead we use the correct client[Width/Height]
+ // support:IE6
+ if ( doc[ clientProp ] >= doc[ scrollProp ] ) {
+ return doc[ clientProp ];
+ }
+
return Math.max(
- doc[ clientProp ],
elem.body[ scrollProp ], doc[ scrollProp ],
elem.body[ offsetProp ], doc[ offsetProp ]
);
--- /dev/null
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" dir="ltr" id="html">
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <style>
+ body {
+ width: 1000px;
+ height: 1000px;
+ }
+ </style>
+</head>
+<body>
+ <div>
+ <script src="../include_js.php"></script>
+ </div>
+</body>
+</html>
\ No newline at end of file
--- /dev/null
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" dir="ltr" id="html">
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+</head>
+<body>
+ <div>
+ <script src="../include_js.php"></script>
+ </div>
+</body>
+</html>
\ No newline at end of file
div.remove();
jQuery.removeData($div[0], "olddisplay", true);
});
+
+testIframe("dimensions/documentSmall", "window vs. small document", function( jQuery, window, document ) {
+ expect(2);
+
+ equal( jQuery( document ).height(), jQuery( window ).height(), "document height matches window height");
+ equal( jQuery( document ).width(), jQuery( window ).width(), "document width matches window width");
+});
+
+testIframe("dimensions/documentLarge", "window vs. large document", function( jQuery, window, document ) {
+ expect(2);
+
+ ok( jQuery( document ).height() > jQuery( window ).height(), "document height is larger than window height");
+ ok( jQuery( document ).width() > jQuery( window ).width(), "document width is larger than window width");
+});