滚动条的监听与内容随着滚动条动态加载的实现


Posted in Javascript onFebruary 08, 2017

实例如下:

<!DOCTYPE html>
<html>
<head>
  <title>当滚动条滑到底部时自动加载内容</title>
  <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>
  <style type="text/css">
    body{
      background-color: #808080;
    }
    #main{
      margin:0 auto;
      width: 960px;
    }
    #content{
      position: absolute;
      width: 960px;
    }
    #img{
      margin: 0;
      padding: 0;
    }
    #img li{
      list-style-type: none;
      background-color: salmon;
      margin: 0;
      margin-top:10px;
      border-bottom: solid 1px hotpink;
      text-align: center;
    }
  </style>
</head>
<body>
<div id="main">
  <div id="content">
    <ul id="img">
      <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>
      <li>11</li>
      <li>12</li>
      <li>13</li>
      <li>14</li>
      <li>15</li>
      <li>16</li>
      <li>17</li>
      <li>18</li>
      <li>19</li>
      <li>20</li>
      <li>21</li>
      <li>22</li>
      <li>23</li>
      <li>24</li>
      <li>25</li>
      <li>26</li>
      <li>27</li>
      <li>28</li>
      <li>29</li>
      <li>30</li>
    </ul>
  </div>
</div>
<script type="text/javascript" src="js/jquery-1.7.2.min.js"></script>
<script type="text/javascript">
  //获取列表中的原有内容
  var content=document.getElementById("img").innerHTML;
  //每被调用一次,就将网页原有内容添加一份,这个大家可以写自己要加载的内容或指令
  function addLi(){
    document.getElementById("img").innerHTML+=content;
  }
  /*
   * 监听滚动条,本来不想用jQuery但是发现js里面监听滚动条的事件不好添加,这边就引用了Jquery的$(obj).scroll();这个方法了
   */
  $(window).scroll(function(){
    //下面这句主要是获取网页的总高度,主要是考虑兼容性所以把Ie支持的documentElement也写了,这个方法至少支持IE8
    var htmlHeight=document.body.scrollHeight||document.documentElement.scrollHeight;
    //clientHeight是网页在浏览器中的可视高度,
    var clientHeight=document.body.clientHeight||document.documentElement.clientHeight;
    //scrollTop是浏览器滚动条的top位置,
    var scrollTop=document.body.scrollTop||document.documentElement.scrollTop;
    //通过判断滚动条的top位置与可视网页之和与整个网页的高度是否相等来决定是否加载内容;
    if(scrollTop+clientHeight==htmlHeight){
       addLi();
    }
  })
</script>
</body>
</html>

以上这个方法Ie8还有一些主流的浏览器基本都兼容,大家可以尝试下~~

以上这篇滚动条的监听与内容随着滚动条动态加载的实现就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
如何简单地用YUI做JavaScript动画
Mar 10 Javascript
解析John Resig Simple JavaScript Inheritance代码
Dec 03 Javascript
javascript随机将第一个dom中的图片添加到第二个div中示例
Oct 08 Javascript
JS使用eval()动态创建变量的方法
Jun 03 Javascript
原生JS下拉加载插件分享
Dec 26 Javascript
基于iScroll实现下拉刷新和上滑加载效果
Jul 18 Javascript
详解a++和++a的区别
Aug 30 Javascript
jQuery访问浏览器本地存储cookie、localStorage和sessionStorage的基本用法
Oct 20 jQuery
jQuery解析json格式数据示例
Sep 01 jQuery
分享5个小技巧让你写出更好的 JavaScript 条件语句
Oct 20 Javascript
分享8个JavaScript库可更好地处理本地存储
Oct 12 Javascript
js面向对象方式实现拖拽效果
Mar 03 Javascript
JQuery页面随滚动条动态加载效果的简单实现(推荐)
Feb 08 #Javascript
setTimeout学习小结
Feb 08 #Javascript
jquery uploadify如何取消已上传成功文件
Feb 08 #Javascript
js/jquery控制页面动态加载数据 滑动滚动条自动加载事件的方法
Feb 08 #Javascript
用move.js库实现百叶窗特效
Feb 08 #Javascript
浅谈js停止事件冒泡 阻止浏览器的默认行为(阻止超连接 #)
Feb 08 #Javascript
Move.js入门
Feb 08 #Javascript
You might like
mysql+php分页类(已测)
2008/03/31 PHP
php学习 函数 课件
2008/06/15 PHP
Linux中用PHP判断程序运行状态的2个方法
2014/05/04 PHP
ajax+php控制所有后台函数调用
2015/07/15 PHP
Smarty模板变量调节器用法分析
2016/05/23 PHP
laravel Task Scheduling(任务调度)在windows下的使用详解
2019/10/22 PHP
jQuery 前的按键判断代码
2010/03/19 Javascript
Javascript学习笔记-详解in运算符
2011/09/13 Javascript
jQuery EasyUI API 中文文档 - EasyLoader 加载器
2011/09/29 Javascript
浅析js中2个等号与3个等号的区别
2013/08/06 Javascript
JavaScript子类用Object.getPrototypeOf去调用父类方法解析
2013/12/05 Javascript
JQuery替换DOM节点的方法
2015/06/11 Javascript
jQuery+ajax实现文章点赞功能的方法
2015/12/31 Javascript
详解Webwork中Action 调用的方法
2016/02/02 Javascript
JavaScript实现打地鼠小游戏
2020/04/23 Javascript
js实现canvas保存图片为png格式并下载到本地的方法
2017/08/31 Javascript
浅谈Node Inspector 代理实现
2017/10/19 Javascript
JavaScript实现多叉树的递归遍历和非递归遍历算法操作示例
2018/02/08 Javascript
微信小程序实现人脸识别登陆的示例代码
2019/04/02 Javascript
[00:27]DOTA2战队VP、Secret贺新春
2018/02/11 DOTA
Python列表删除元素del、pop()和remove()的区别小结
2019/09/11 Python
pytorch实现用CNN和LSTM对文本进行分类方式
2020/01/08 Python
python实现微信打飞机游戏
2020/03/24 Python
如何验证python安装成功
2020/07/06 Python
Python如何实现大型数组运算(使用NumPy)
2020/07/24 Python
可以随进度显示不同颜色的css3进度条分享
2014/04/11 HTML / CSS
英国最大的独立家具零售商:Furniture Village
2016/09/06 全球购物
Lookfantastic台湾:英国彩妆美发保养购物网
2018/03/26 全球购物
会计学毕业生求职信
2014/06/25 职场文书
优秀团员事迹材料1000字
2014/08/20 职场文书
教书育人演讲稿
2014/09/11 职场文书
2014年业务工作总结
2014/11/17 职场文书
魂断蓝桥观后感
2015/06/10 职场文书
合理缓解职场压力,让你随时保持最佳状态!
2019/06/21 职场文书
Python入门之使用pandas分析excel数据
2021/05/12 Python
世界十大狙击步枪排行榜
2022/03/20 杂记