5

我已经用谷歌搜索了一段时间,但仍然找不到为什么
$(document).height()不同$(document.body).height()

另外,谁能告诉我
jQuery中的height方法和原始JavaScript方法之间的对应关系?

例如,$(document).height()等价于document.documentElement.scrollHeight

4

2 回答 2

4

因为<body>HTML 中的元素只是另一个块元素(很像 a <div>),并且与任何块元素一样,它可以具有尺寸样式(marginpaddingwidthheight等)。

考虑到这一点,<body>元素的“大小”不需要直接对应于document对象的大小(它对应于呈现的整个 HTML 文档,作为一个整体)。一个很好的理由是<body>元素也在<html>元素内部,它也是一个块元素,可以有自己的维度。

<html>例如,如果您的元素 has padding:10px,那么您的<body>元素的有效大小肯定会与整体document完全不同。

现在,不要误会我的意思:document并且document.body 可以具有完全相同的大小(例如,尝试检查 StackOverflow 的),但您必须了解这<body>只是您可以通过 CSS 操作的另一个 HTML 块。

于 2012-10-18T13:05:33.497 回答
0

我认为身体有一个标准的边距。对于第二部分,我不知道你的意思。

于 2012-10-18T13:01:22.723 回答