有時候我們需要頁面滾動到底部的時候去加載更多的數據,實現思路基本上就是判斷瀏覽器頁面是否滾動到了頁面底部,當滾動到頁面底部的時候,用AJAX異步獲取數據然后加載到頁面中。
利用jQuery判斷瀏覽器頁面是否滑動到了底部:
<script type="text/javascript"> // scroll event $(window).scroll(function(){ // scroll at bottom if ($(window).scrollTop() + $(window).height() == $(document).height()) { // load data } }); </script>
$(window).scroll() 方法用於監聽滾動條的滾動
$(window).scrollTop() 用於計算窗口相對於滾動條頂部的偏移, $(window).height() 和 $(document).height() 分別表示當面窗口的高度和文檔的高度。
當窗口相對於滾動條頂部的位置偏移(即頁面滾動時滑出頁面的文檔高度)加上窗口高度等於整個文檔的高度時,表示我們的頁面滾動已經到了底部。
上面這個例子在滾動條到底部的時候,console打印正常。
注:網頁文件編寫的時候一定要在網頁文件開始申明DOCTYPE,比如 <!DOCTYPE html> ,否則,可能會引起解析問題。就拿這個例子來說,如果不申明該元素, $(window).height() 和 $(document).height() 拿到的高度可能就是一樣的。