jQuery实现列表内容的动态载入特效


Posted in Javascript onAugust 08, 2015

采用Jquery实现的列表数据动态更新效果,更新的数据可以是ajax请求的数据。

CSS:

.main {
 width: 100%;
 margin-top: 100px;
 text-align: center;
 font-size: 12.5px;
}

th, td {
 border: 1px solid #ccc;
 line-height: 40px;
 padding-left: 5px;
}
.item:hover {
 background-color: #efefef;
}
.item:nth-child(2n) {
 background-color: #efefef;
}
.ListView {
 width: 600px;
 overflow: hidden;
 margin: 0 auto;
 padding: 10px;
 height:372px;
 border: 1px solid #dddddd;
}
.ListView .c {
 width: 1200px;
 margin: 0 auto;
 border-collapse: collapse;
}
.Item {
 border-bottom: 1px dashed #dddddd;
 padding: 10px 0 10px 0;
 overflow: hidden;
 margin-left:600px;
}
.Item span {
 float: left;
 text-align: left;
}
.Item span:first-child {
 color: #6AA8E8;
}
.Item span:last-child {
 text-align: center;
}

HTML

<div class="main">
 <div class="ListView">
  <div class="c">
  <div class="Item"> <span>test</span> <span>男/0</span> <span>四川省,成都市,锦江区</span> <span>详细说明</span> </div>
  <div class="Item"> <span>test</span> <span>男/0</span> <span>四川省,成都市,锦江区</span> <span>详细说明</span> </div>
  <div class="Item"> <span>test</span> <span>男/0</span> <span>四川省,成都市,锦江区</span> <span>详细说明</span> </div>
  <div class="Item"> <span>test</span> <span>男/0</span> <span>四川省,成都市,锦江区</span> <span>详细说明</span> </div>
  <div class="Item"> <span>test</span> <span>男/0</span> <span>四川省,成都市,锦江区</span> <span>详细说明</span> </div>
  <div class="Item"> <span>test</span> <span>男/0</span> <span>四川省,成都市,锦江区</span> <span>详细说明</span> </div>
  <div class="Item"> <span>test</span> <span>男/0</span> <span>四川省,成都市,锦江区</span> <span>详细说明</span> </div>
  <div class="Item"> <span>test</span> <span>男/0</span> <span>四川省,成都市,锦江区</span> <span>详细说明</span> </div>
  <div class="Item"> <span>test</span> <span>男/0</span> <span>四川省,成都市,锦江区</span> <span>详细说明</span> </div>
  <div class="Item"> <span>test</span> <span>男/0</span> <span>四川省,成都市,锦江区</span> <span>详细说明</span> </div>
 </div>
 </div>
</div>
<p style="text-align:center;"><a href="javascript:void(0);" onClick="ListView.Update();">刷新数据</a></p>

JS

<script type="text/javascript" src="/js/jquery-1.8.0.min.js"></script>
<script type="text/javascript">
$(function(){
 ListView.Init();
});
var ListView={
 Init:function(){
 $(".Item span").css("width",$(".ListView").width()/4+"px");
 for(var i=0;i<$(".Item").length;i++){
 var target=$(".Item")[i];
 $(target).animate({marginLeft:"0px"},300+i*100);
 }
 },
 Update:function(){
 $(".ListView .c .Item").remove();
 for(var i=0;i<10;i++){
 var newItem=$("<div class=\"Item\"> <span>test</span> <span>男/"+i+"</span> <span>四川省,成都市,锦江区</span> <span>详细说明</span> </div>");
 $(newItem).find("span").css("width",$(".ListView").width()/4+"px");
 $(".ListView .c").append(newItem);
 $(newItem).animate({marginLeft:"0px"},300+i*100);
 }
 }
}
</script>

附上演示效果 http://demo.3water.com/js/2015/jquery-dtlb

效果是不是非常棒呢,接下来我们再来看看瀑布流的实现思路和js控制动态加载的代码

下面的代码主要是控制滚动条下拉时的加载事件的

在下面代码说明出,写上你的操作即可,无论是加载图片还是加载记录数据  都可以 

别忘了引用jquery类库

$(window).scroll(function () {
  var scrollTop = $(this).scrollTop();
  var scrollHeight = $(document).height();
  var windowHeight = $(this).height();
  if (scrollTop + windowHeight == scrollHeight) {

  //此处是滚动条到底部时候触发的事件,在这里写要加载的数据,或者是拉动滚动条的操作

//var page = Number($("#redgiftNextPage").attr('currentpage')) + 1;
//redgiftList(page);
//$("#redgiftNextPage").attr('currentpage', page + 1);

  }
 });

解析:

判断滚动条到底部,需要用到DOM的三个属性值,即scrollTop、clientHeight、scrollHeight。
scrollTop为滚动条在Y轴上的滚动距离。
clientHeight为内容可视区域的高度。
scrollHeight为内容可视区域的高度加上溢出(滚动)的距离。
从这个三个属性的介绍就可以看出来,滚动条到底部的条件即为scrollTop + clientHeight == scrollHeight。(兼容不同的浏览器)。

Javascript 相关文章推荐
通过修改referer下载文件的方法
May 11 Javascript
jquery插件 cluetip 关键词注释
Jan 12 Javascript
JS限制上传图片大小不使用控件在本地实现
Dec 19 Javascript
JavaScript中遍历对象的property的3种方法介绍
Dec 30 Javascript
AngularJS控制器controller正确的通信的方法
Jan 25 Javascript
AngularJS实现根据不同条件显示不同控件
Apr 20 Javascript
apicloud拉起小程序并传递参数的方法示例
Nov 21 Javascript
BootStrap table实现表格行拖拽效果
Dec 01 Javascript
JavaScript数组去重的方法总结【12种方法,号称史上最全】
Feb 28 Javascript
一百行JS代码实现一个校验工具
Apr 30 Javascript
微信小程序实现购物车代码实例详解
Aug 29 Javascript
js tab栏切换代码实例解析
Sep 03 Javascript
jQuery实现下拉框选择图片功能实例
Aug 08 #Javascript
jQuery实现指定内容滚动同时左侧或其它地方不滚动的方法
Aug 08 #Javascript
jQuery实现的Div窗口震动效果实例
Aug 07 #Javascript
jQuery实现时尚漂亮的弹出式对话框实例
Aug 07 #Javascript
jquery插件jquery.beforeafter.js实现左右拖拽分隔条对比图片的方法
Aug 07 #Javascript
jQuery基于ajax实现星星评论代码
Aug 07 #Javascript
jQuery实现网页抖动的菜单抖动效果
Aug 07 #Javascript
You might like
WAR3重制版DOTA 5V5初体验
2020/04/09 DOTA
Mysql中limit的用法方法详解与注意事项
2008/04/19 PHP
ThinkPHP3.2.3实现分页的方法详解
2016/06/03 PHP
php下的原生ajax请求用法实例分析
2020/02/28 PHP
JavaScript 克隆数组最简单的方法
2009/02/12 Javascript
JavaScript 字符串与数组转换函数[不用split与join]
2009/12/13 Javascript
基于JQuery的密码强度验证代码
2010/03/01 Javascript
javascript 45种缓动效果 非常酷
2011/06/28 Javascript
JavaScript快速检测浏览器对CSS3特性的支持情况
2012/09/26 Javascript
javascript级联下拉列表实例代码(自写)
2013/05/10 Javascript
js给onclick赋值传参数的两种方法
2013/11/25 Javascript
Jquery 动态生成表格示例代码
2013/12/24 Javascript
js实现仿QQ秀换装效果的方法
2015/03/04 Javascript
如何消除inline-block属性带来的标签间间隙
2016/03/31 Javascript
Kindeditor在线文本编辑器如何过滤HTML
2016/04/14 Javascript
vue项目中使用lib-flexible解决移动端适配的问题解决
2018/08/23 Javascript
深入理解react-router 路由的实现原理
2018/09/26 Javascript
微信小程序实现跑马灯效果
2020/10/21 Javascript
为什么说JavaScript预解释是一种毫无节操的机制详析
2018/11/18 Javascript
微信小程序实现卡片左右滑动效果的示例代码
2019/05/01 Javascript
javascript实现画板功能
2020/04/12 Javascript
如何使用JavaScript检测空闲的浏览器选项卡
2020/05/28 Javascript
nuxt 服务器渲染动态设置 title和seo关键字的操作
2020/11/05 Javascript
[06:49]2018DOTA2国际邀请赛寻真——VirtusPro傲视群雄
2018/08/12 DOTA
Python中random模块用法实例分析
2015/05/19 Python
python处理大数字的方法
2015/05/27 Python
Python中for循环和while循环的基本使用方法
2015/08/21 Python
Python flask框架如何显示图像到web页面
2020/06/03 Python
python中的插入排序的简单用法
2021/01/19 Python
美国皮靴公司自1863年:The Frye Company
2016/11/30 全球购物
中国跨境电子商务网站:NewFrog
2018/03/10 全球购物
2014年学校安全工作总结
2014/11/13 职场文书
2015年收银工作总结范文
2015/04/01 职场文书
九年级化学教学反思
2016/02/22 职场文书
《倍数和因数》教学反思
2016/02/23 职场文书
Nginx配置之实现多台服务器负载均衡
2021/08/02 Servers