2011-11-25 50 views
3

私はこの2つの要素のプロパティについて助けが必要です。なぜdocument.body.scrollHeightがdocument.body.offsetHeightよりも大きくなるのですか

MDN element.scrollHeightよれ

「要素のスクロールビューのこの高さは、それが要素のパディングではなく、そのマージンを含む」、及びelement.offsetHeight「は、典型的には、要素のoffsetHeight要素の境界を含む測定、垂直要素であります要素の水平スクロールバー(レンダリングされている場合)、および要素のCSSの高さを指定します。

いくつかのJavaScriptコードをデバッグしようとしていますが、なぜdocument.body.scrollHeightがdocument.body.offsetHeightよりも大きい可能性があるのか​​理解していませんか?
たとえば、私のdocument.body.offsetHeight = 909ですが、document.body.scrollHeight = 1059(本文には余白やパディングや枠線がありません)、150pxをどこかで失ってしまいました。私は身体を検査し、身長= 909で、これは私を非常に混乱させます。これはchromeとfirefoxで再現されました。

この質問で私を助けてもらえますか?

+1

document.body!=はdocument.firstChild –

+0

申し訳ありませんが、みんなで働いているプロジェクトではこれらのほとんどを使用しています:)私は私の質問を修正しました。 – Kai

+0

より...それは良い質問です;) –

答えて

3

offsetHeightプロパティは、アクティブなウィンドウ内の現在の使用可能なスペースの上からどれだけ離れているかを示します。 scrollHeightプロパティは、Containの内側の上端から内側の下端までのピクセル数で、overflow:scroll cssプロパティを持つ限定された高さに設定されたコンテナのclientHeightとは異なります。

私は金曜日の夜、これは私のひどい間違いです、私はhttp://prettydiff.com/jsgui/