ドキュメントの高さを取得する方法はたくさんありますが、ブラウザの実装が異なるため、ほとんどの場合、ほとんどの場合、大丈夫です。Javascript(またはjQuery)で実際のコンテンツの高さを取得
私のケースでは、私はウィンドウとビューポートの高さよりも小さい高さであることがわかっているページ上にいくつかの要素があります。私が得ようとしているのは、すべてのレンダリングされた要素の実際の高さです。 (Firefoxでテストして)動作しません
もの:
$(document).height(); // gives the window height
document.body.scrollHeight; // gives 7, its always 7 I don't know why
document.body.offsetHeight; // also gives 7
document.documentElement.clientHeight; // sometimes gives window height
document.documentElement.scrollHeight; //gives window height
document.documentElement.offsetHeight; generally gives a value in the range of 23
現在のところ、私の考えでは、div
をheight: 0
に挿入して、ページの下に$(div).offset().top
をつけていると思っていますが、これは間違っている可能性が高いと思います未来。
私はそれを行う前に、だから... ...
は、ウィンドウの高さよりも低いのです時にコンテンツの高さを知る方法はありますか?
EDIT:
人々は明確化を求めています。私が望むことのjsFiddleの例/私が得ている結果を得ます。 https://jsfiddle.net/8Lu2zcw8/1/
実行すると、Win HeightとDoc Heightが同じ値になり、コンソールに書き出されます。
EDIT2:彼のソリューションへのコメントで@ティム・ベルマーレンで指摘したように
は私の問題は、体が原因浮かべおよび絶対位置指定要素にコンテンツを正しくラップしませによるものでした。
'$(document).height(); //ウィンドウの高さを 'noにすると、ドキュメントの高さを与える:https://jsfiddle.net/9nm032hs/。どんな増加もブラウザによってボディに置かれたデフォルトのパディングによって引き起こされます。これは、リセットスタイルシートで修正する必要があります。表示されたものが問題の詳細ではなく機能しないものであれば、あなたを助けることは困難です。ブラウザの違いは何ですか?あなたのHTMLは何ですか? –
jsFiddleの例が追加されました – Morvael