JavaScript實(shí)現(xiàn)元素滾動(dòng)條到達(dá)一定位置循環(huán)追加內(nèi)容
如下所示:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style type="text/css">
body{
background-color: #eee;
}
#contents{
margin:30px auto;
width: 960px;
height:300px;
overflow:auto;
}
#list{
margin: 0;
padding: 0;
}
#list li{
color:#666;
list-style-type: none;
background-color: #ddd;
margin: 0;
margin-top:10px;
border-bottom: solid 1px #999;
text-align: center;
height:30px;
}
</style>
<script type="text/javascript">
//獲取列表中的原有內(nèi)容
window.onload=function(){
var contents=document.getElementById("list").innerHTML;
//每被調(diào)用一次,就將網(wǎng)頁(yè)原有內(nèi)容添加一份,這個(gè)大家可以寫(xiě)自己要加載的內(nèi)容或指令
function appendcontent(){
document.getElementById("list").innerHTML+=contents;
}
document.getElementById("contents").onscroll=function(){
//content實(shí)際高度,
var contentscrollHeight=document.getElementById("contents").scrollHeight;
//contentclientHeight可視區(qū)高度,
var contentclientHeight=document.getElementById("contents").offsetHeight;
//滾動(dòng)條距頂部高度
var contentscrollTop=document.getElementById("contents").scrollTop;
//通過(guò)判斷滾動(dòng)條的距離底部位置判斷手否加載內(nèi)容
var height=contentclientHeight+100;
if(contentscrollTop+height>=contentscrollHeight){
if(document.getElementById("list").childNodes.length>=150){
if(document.getElementById("nodata")){
}else{
var nodata=document.createElement("div");
nodata.id="nodata";
nodata.style.height="50px";
nodata.style.textAlign="center";
nodata.style.lineHeight="50px";
nodata.style.borderTop="1px solid #eee";
nodata.innerHTML="我是有底線(xiàn)的";
nodata.style.backgroundColor="#fff";
document.getElementById("list").appendChild(nodata);
}
console.log(document.getElementById("list").childNodes.length)
return;
}else{
appendcontent();
}
}
};
}
</script>
</head>
<body>
<div id="contents">
<ul id="list">
<li>張朋1</li>
<li>張朋2</li>
<li>張朋3</li>
<li>張朋4</li>
<li>張朋5</li>
<li>張朋6</li>
<li>張朋7</li>
<li>張朋8</li>
<li>張朋9</li>
<li>張朋10</li>
</ul>
</div>
</body>
</html>
以上這篇JavaScript實(shí)現(xiàn)元素滾動(dòng)條到達(dá)一定位置循環(huán)追加內(nèi)容就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
javascript實(shí)現(xiàn)簡(jiǎn)單小鋼琴有聲彈奏效果
用HTML5+javascript實(shí)現(xiàn)的小鋼琴,按下鋼琴鍵上的相應(yīng)字母用或用鼠標(biāo)點(diǎn)擊鋼琴鍵發(fā)聲,javascript代碼包含了對(duì)鼠標(biāo)按下、移動(dòng)和松開(kāi),以及鍵盤(pán)按下的事件監(jiān)聽(tīng)2024-02-02
JS實(shí)現(xiàn)兼容各種瀏覽器的高級(jí)拖動(dòng)方法完整實(shí)例【測(cè)試可用】
這篇文章主要介紹了JS實(shí)現(xiàn)兼容各種瀏覽器的高級(jí)拖動(dòng)方法,以完整實(shí)例形式分析了JS實(shí)現(xiàn)響應(yīng)鼠標(biāo)事件動(dòng)態(tài)修改頁(yè)面元素的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2016-06-06
如何基于viewport vm適配移動(dòng)端頁(yè)面
這篇文章主要介紹了如何基于viewport vm適配移動(dòng)端頁(yè)面,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-11-11
js實(shí)現(xiàn)的鼠標(biāo)滾輪滾動(dòng)切換頁(yè)面效果(類(lèi)似360默認(rèn)頁(yè)面滾動(dòng)切換效果)
這篇文章主要介紹了js實(shí)現(xiàn)的鼠標(biāo)滾輪滾動(dòng)切換頁(yè)面效果,類(lèi)似360默認(rèn)頁(yè)面滾動(dòng)切換效果.涉及JavaScript響應(yīng)鼠標(biāo)事件動(dòng)態(tài)變換頁(yè)面元素的相關(guān)技巧,需要的朋友可以參考下2016-01-01
layui radio單選限制下一個(gè)radio單選的實(shí)例
今天小編就為大家分享一篇layui radio單選限制下一個(gè)radio單選的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-09-09
微信小程序上線(xiàn)發(fā)布具體流程簡(jiǎn)析
眾所周知,微信小程序制作成功后,是需要提交到微信公眾平臺(tái)去審核的,審核通過(guò)后,才可以發(fā)布上線(xiàn)的,上線(xiàn)了之后才可以進(jìn)行運(yùn)營(yíng)的,下面這篇文章主要給大家介紹了關(guān)于微信小程序上線(xiàn)發(fā)布具體流程的相關(guān)資料,需要的朋友可以參考下2022-10-10
一覽畫(huà)面點(diǎn)擊復(fù)選框后獲取多個(gè)id值的方法
這篇文章主要介紹了在一覽畫(huà)面點(diǎn)擊復(fù)選框后獲取多個(gè)id值的方法,前臺(tái)采用js技術(shù)后臺(tái)采用java技術(shù)實(shí)現(xiàn)的,邏輯清晰,非常不錯(cuò),具有參考借鑒價(jià)值,感興趣的朋友一起看看吧2016-05-05

