良いソースを見つけたのでメモで。
——————————–
var wholeheight = Math.max.apply( null, [document.body.clientHeight , document.body.scrollHeight, document.documentElement.scrollHeight, document.documentElement.clientHeight];
——————————–
以下の4つの値を比較して一番大きいものを全体の高さとして取得しています。
document.body.clientHeight
document.body.scrollHeight
document.documentElement.scrollHeight
document.documentElement.clientHeight
長いページだとclientHeightよりscrollHeightのほうが大きいですが、スクロールバーが出ないほど短いページだった場合は、clientHeightのほうが大きくなります。
というわけで、比較してどちらか大きいものを採用と。
document.body.scrollHeight
document.documentElement.scrollHeight
のように2つ書き方が混ざっているのは、互換モードと標準準拠モードのどちらにも対応するためです。
これ使ったらすごくラクでした。
more from " javascriptでコンテンツ(表示領域外に隠れたものも含む)全体の高さを取得したい "...