回答編集履歴
1
消し忘れを修正
answer
CHANGED
@@ -8,12 +8,4 @@
|
|
8
8
|
var scrollTop = body.scrollTop || html.scrollTop;
|
9
9
|
return html.scrollHeight - html.clientHeight - scrollTop;
|
10
10
|
}
|
11
|
-
> ```
|
11
|
+
> ```
|
12
|
-
|
13
|
-
---
|
14
|
-
正常に動かなかった理由ですが、`scrollHeight - scrollPosition`が必ず0になるため発生していると思われます。
|
15
|
-
|
16
|
-
`scrollHeight - scrollPosition`は、元は`elm.scrollHeight - (elm.offsetHeight + elm.scrollTop)`です。
|
17
|
-
今回の場合、`<div id="log">`にスタイルが設定されていないため、`elm.scrollHeight`と`elm.offsetHeight`は常に同じ値になります。また同様の理由で、`elm.scrollTop`は常に0になります。(ページ全体のスクロール量を取得する場合、前出のように`body.scrollTop`などを指定する必要があります。)
|
18
|
-
|
19
|
-
これにより、`scrollHeight - scrollPosition`が必ず0になるため、正常に動作していません。
|