1. ページ スクロール イベントを登録します。window.onscroll = function(){ };
2. ページの高さ、スクロール バーの位置、ドキュメントの高さを取得する関連関数:
//スクロール バーの現在位置を取得します
function getScrollTop() {
varscrollTop = 0 ;
if (document.documentElement && document.documentElement.scrollTop) {
scrollTop = document.documentElement.scrollTop;
else if (document.body) {
scrollTop = document.body.scrollTop;
}
returnscrollTop;
//現在の範囲の高さを取得します
function getClientHeight() {
var clientHeight = 0;
if (document.body.clientHeight && document.documentElement.clientHeight) {
clientHeight = Math.min(document.body.clientHeight, document.documentElement.clientHeight); }
else {
clientHeight = Math.max(document.body.clientHeight, document.documentElement.clientHeight);
}
return
}
//ドキュメントの完全な高さを取得します
function getScrollHeight() {
return Math.max(document.body.scrollHeight, document.documentElement.scrollHeight)
}
3 、HTML ページの下部にコードを追加します:
コードをコピー
コードは次のとおりです: <script> </div>window.onscroll = function () { <div class="codebody" id="code15357">if (getScrollTop() getClientHeight() == getScrollHeight()) { <br>alert("底に到達中"); } <br>} <br></script>
このようにすると、スクロール バーがページの下部に到達すると、alert("bottom到達") がトリガーされます。次に行うことは、トリガーされた関数を ajax 呼び出しに変更し、ページにコンテンツを動的に追加することです。
4、ページ要素を動的に追加するサンプル コード:
コードをコピーします
コードは次のとおりです: var newnode = document.createElement("a"); newnode.innerHTML = "新しい項目"; >document.body .appendChild(newnode);
var newline = document.createElement("br");
このコードを次のように置き換えますalert( "一番下に到達"); とすると、スクロールバーが一番下までスクロールすると、ページの一番下に「新しい項目」の行が追加され、下にスクロールするのとは異なり、そのまま増え続けていくことがわかります。終わり。
5、サンプル コードを ajax 関連コードに変更します。
コードをコピーします
コードは次のとおりです。
1 200
2 200
3 200 ajax ok
4 200 ajax ok
しかし、ここで 2 つのステータス 0 と 1 が出力されなかったのはなぜでしょうか。