JavaScript实现元素滚动条到达一定位置循环追加内容

 更新时间:2017年12月28日 08:49:48   作者:玉面灵狐  
下面小编就为大家分享一篇JavaScript实现元素滚动条到达一定位置循环追加内容,具有很好的参考价值,希望对大家有所帮助

如下所示:

<!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">
//获取列表中的原有内容
window.onload=function(){
var contents=document.getElementById("list").innerHTML;
//每被调用一次,就将网页原有内容添加一份,这个大家可以写自己要加载的内容或指令
function appendcontent(){
document.getElementById("list").innerHTML+=contents;
}
document.getElementById("contents").onscroll=function(){
//content实际高度,
var contentscrollHeight=document.getElementById("contents").scrollHeight;
//contentclientHeight可视区高度,
var contentclientHeight=document.getElementById("contents").offsetHeight;
//滚动条距顶部高度
var contentscrollTop=document.getElementById("contents").scrollTop;
//通过判断滚动条的距离底部位置判断手否加载内容
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="我是有底线的";
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实现元素滚动条到达一定位置循环追加内容就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • php对mongodb的扩展(初识如故)

    php对mongodb的扩展(初识如故)

    mongodb的数据存储格式是一种由于MongoDB的文档结构为BJSON格式(BJSON全称:Binary JSON),而BJSON格式本身就支持保存二进制格式的数据,因此可以把文件的二进制格式的数据直接保存到MongoDB的文档结构中
    2012-11-11
  • window.print()前端实现网页打印功能详解

    window.print()前端实现网页打印功能详解

    JavaScript 函数window.print()可用于打印你的应用的内容,但是它针对的是使用默认打印体验打印显示在屏幕上的内容,这篇文章主要给大家介绍了关于window.print()前端实现网页打印功能的相关资料,需要的朋友可以参考下
    2024-04-04
  • 微信小程序实现比较功能的方法汇总(五种方法)

    微信小程序实现比较功能的方法汇总(五种方法)

    这篇文章主要介绍了微信小程序实现比较功能的方法,本文给大家列举出五种方式,每种方法通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-03-03
  • JavaScript继承基础讲解(原型链、借用构造函数、混合模式、原型式继承、寄生式继承、寄生组合式继承)

    JavaScript继承基础讲解(原型链、借用构造函数、混合模式、原型式继承、寄生式继承、寄生组合式继承)

    这篇文章主要介绍了JavaScript继承基础讲解,原型链、借用构造函数、混合模式、原型式继承、寄生式继承、寄生组合式继承,需要的朋友可以参考下
    2014-08-08
  • javascript设计模式之中介者模式Mediator

    javascript设计模式之中介者模式Mediator

    这篇文章主要介绍了javascript设计模式之中介者模式Mediator,需要的朋友可以参考下
    2014-12-12
  • JavaScript实现Tab栏切换特效

    JavaScript实现Tab栏切换特效

    这篇文章主要为大家详细介绍了JavaScript实现Tab栏切换特效,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-06-06
  • JS实现简单表格排序操作示例

    JS实现简单表格排序操作示例

    这篇文章主要介绍了JS实现简单表格排序操作,结合具体实例形式分析了JavaScript事件响应及table表格动态操作相关技巧,需要的朋友可以参考下
    2017-10-10
  • js如何判断输入字符串长度

    js如何判断输入字符串长度

    这篇文章主要介绍了js判断输入字符串长度,汉字算两个字符,字母数字算一个,感兴趣的小伙伴们可以参考一下
    2015-12-12
  • JavaScript如何实现在文本框(密码框)输入提示语

    JavaScript如何实现在文本框(密码框)输入提示语

    为了更好的达到用户体验度,我们在登录表单时会有一些提示语言,比如说:“请输入用户名”和“请输入密码”等语言,下面小编通过本篇文章给大家分享JavaScript如何实现在密码框中出现提示语,对js密码框提示语相关知识感兴趣的朋友一起学习吧
    2015-12-12
  • javascript 中select框触发事件过程的分析

    javascript 中select框触发事件过程的分析

    这篇文章主要介绍了javascript 中select框触发事件过程的分析的相关资料,这里对select 触发过程进行了深入分析,帮助大家理解这部分内容,需要的朋友可以参考下
    2017-08-08

最新评论