日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

滚动到页面底部自动加载内容

發(fā)布時間:2023/12/20 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 滚动到页面底部自动加载内容 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

  上網(wǎng)時經(jīng)常會看到許多酷炫的網(wǎng)頁,其中給我印象較深刻的是鼠標滾動到頁面底部時會自動加載內(nèi)容,一直都很好奇是怎么樣做到的,于是自己也嘗試著寫了一下。

  先上個完整代碼吧:

<!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><title>Document</title><script src="js/jquery.min.js"></script><style>div{width:900px;height:800px;}li{list-style-type:none;}</style> </head> <body id="container"><div>lfjakjflkf</div><script>//獲取滾動條當前的位置 function getscrolltop() { var scrolltop = 0; if (document.documentElement && document.documentElement.scrollTop) { scrolltop = document.documentElement.scrollTop; } else if (document.body) { scrolltop = document.body.scrollTop; } return scrolltop; } //獲取當前可視范圍的高度 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 clientheight; } //獲取文檔完整的高度 function getscrollheight() { return Math.max(document.body.scrollHeight, document.documentElement.scrollHeight); } window.onscroll = function () { if(getscrolltop() + getclientheight() == getscrollheight()) { var xhr;if(window.XMLHttpRequest){xhr = new XMLHttpRequest();}else{xhr = new ActiveXObject("Microsoft.XMLHTTP")};xhr.open("get","load.json",true);xhr.onreadystatechange = function(){if(xhr.readyState == 4&& xhr.status==200){var txt = xhr.responseText;var str = "";// 由于獲取到的是json字符串,因此必須現(xiàn)將其轉換為json對象。 $.each(JSON.parse(txt),function(key,value){str += "<li>"+'姓名:'+value[0].name+'。年齡為:'+value[0].age+'。性別為:'+value[0].sex+"</li>"+"<br/>"+"<br/>";$("body").append(str) })}}xhr.send(); }} </script> </body> </html>

?

 load.json文件的代碼如下:

{"person":[{"name":"tom","age":"25","sex":"男"} ]}

?

 好了,下面來分析下這段代碼,其實先是頁面加載完畢會有一部分內(nèi)容,然后滑動滾動條,一直到文檔可視區(qū)域高度+滾動條距離文檔頂部高度 等于 文檔總高度時 異步加載一個json文件的內(nèi)容。

  這里有幾個要點:1、獲取文檔的完整高度。2、獲取文檔可視區(qū)域高度。3、獲取滾動條距離文檔頂部的高度。4、判斷滾動條是否滑動到頁面底部,如到了底部則異步加載json文件。5、需要將異步加載的json文件渲染到頁面中,由于獲取到的是json字符串,因此需要使用JSON.parse()方法先將其轉換為json對象,才可以使用$.each()方法進行遍歷,然后逐個獲取數(shù)據(jù)。

  其實我這里獲取文檔高度、可視區(qū)域高度以及滾動條距離文檔頂部高度使用js寫的,相對要復雜點,如果用jQuery寫的話,會是很簡潔的,如

  獲取文檔完整高度,可以使用$(document).height();

  獲取文檔可視區(qū)域高度,可以使用$(window).height();

  獲取滾動條距離文檔頂部的高度,可以使用$(window).scrollTop()。

轉載于:https://www.cnblogs.com/jf-67/p/7743088.html

創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎

總結

以上是生活随笔為你收集整理的滚动到页面底部自动加载内容的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。