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


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 相关文章推荐
多浏览器兼容的获取元素和鼠标的位置的js代码
Dec 15 Javascript
JavaScript中的变量声明早于赋值分析
Mar 01 Javascript
基于js与flash实现的网站flv视频播放插件代码
Oct 14 Javascript
JS实现黑色风格的网页TAB选项卡效果代码
Oct 09 Javascript
基于jquery步骤进度条源码分享
Nov 12 Javascript
基于jQuery实现选取月份插件附源码下载
Dec 28 Javascript
深入理解js generator数据类型
Aug 16 Javascript
详解使用Vue.Js结合Jquery Ajax加载数据的两种方式
Jan 10 Javascript
angular+webpack2实战例子
May 23 Javascript
基于Require.js使用方法(总结)
Oct 26 Javascript
JavaScript实现仿Clock ISO时钟
Jun 29 Javascript
js之切换全屏和退出全屏实现代码实例
Sep 09 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
PHP英文字母大小写转换函数小结
2014/05/03 PHP
php记录搜索引擎爬行记录的实现代码
2018/03/02 PHP
checkbox 多选框 联动实现代码
2008/10/22 Javascript
Extjs中的GridPanel隐藏列会显示在menuDisabled中解决方法
2013/01/27 Javascript
js open() 与showModalDialog()方法使用介绍
2013/09/10 Javascript
node.js中的http.response.addTrailers方法使用说明
2014/12/14 Javascript
javascript实现table表格隔行变色的方法
2015/05/13 Javascript
BootstrapTable与KnockoutJS相结合实现增删改查功能【一】
2016/05/10 Javascript
window.close(); 关闭浏览器窗口js代码的总结介绍
2016/07/14 Javascript
Highcharts入门之简介
2016/08/02 Javascript
JS实现简单拖拽效果
2017/06/21 Javascript
微信小程序收藏功能的实现代码
2018/06/12 Javascript
vue构建动态表单的方法示例
2018/09/22 Javascript
Vue实现购物车详情页面的方法
2019/08/20 Javascript
javascript 高级语法之继承的基本使用方法示例
2019/11/11 Javascript
jquery插件懒加载的示例
2020/10/24 jQuery
vue+element UI实现树形表格
2020/12/29 Vue.js
pandas object格式转float64格式的方法
2018/04/10 Python
pandas 按照特定顺序输出的实现代码
2018/07/10 Python
python查看模块,对象的函数方法
2018/10/16 Python
nohup后台启动Python脚本,log不刷新的解决方法
2019/01/14 Python
python输出电脑上所有的串口名的方法
2019/07/02 Python
使用turtle绘制五角星、分形树
2019/10/06 Python
Python.append()与Python.expand()用法详解
2019/12/18 Python
Python for循环与getitem的关系详解
2020/01/02 Python
解决Jupyter Notebook开始菜单栏Anaconda下消失的问题
2020/04/13 Python
基于python实现生成指定大小txt文档
2020/07/20 Python
html5利用canvas绘画二级树形结构图的示例
2017/09/27 HTML / CSS
新郎新娘婚礼答谢词
2014/01/11 职场文书
《狼》教学反思
2014/03/02 职场文书
黄金搭档广告词
2014/03/21 职场文书
小学生国庆节演讲稿
2014/09/05 职场文书
销售经理工作失职检讨书
2014/10/24 职场文书
上班旷工检讨书
2015/08/15 职场文书
Python中使用Lambda函数的5种用法
2021/04/01 Python
python装饰器代码解析
2022/03/23 Python