这个例子是jquery动态加载列表,并通过定时刷新,实现其循环滚动效果的一个例子。

1、HTML代码:

<div class="fake-table">
<li class="fake-table-hr">
<span>姓名</span>
<span>地点</span>
<span>联系方式</span>
</li>
<div class="table-wrap">
<ul id="J_Table">
</ul>
</div>
</div>

2、CSS代码:

.fake-table {
position: relative;
height: 140px;
font-size: 14px;
list-style: none;
} .table-wrap {
height: 120px;
overflow: hidden;
} .table-wrap ul {
position: rerlative;
} .fake-table li {
width: 500px;
height: 20px;
margin: 0 auto;
line-height: 20px;
border: 1px solid #0B519D;
background-color: rgba(24, 65, 157, 0.25);
border-top: none;
} .fake-table li.fake-table-hr {
height: 20px;
line-height: 20px;
background: url(images/table-tr.png) no-repeat;
border: none;
font-weight: bold;
} .fake-table li span {
float: left;
height: 20px;
line-height: 20px;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
text-align: center;
}

3、JS代码:

<script type="text/javascript">
$(function(){
// 定义要加载的数据
var data = [{
name: '张三',
address: '滨江区信诚路',
contact: '15727678507'
},{
name: '张三',
address: '滨江区信诚路',
contact: '15727678507'
},{
name: '张三',
address: '滨江区信诚路',
contact: '15727678507'
},{
name: '张三',
address: '滨江区信诚路',
contact: '15727678507'
},{
name: '张三',
address: '滨江区信诚路',
contact: '15727678507'
},{
name: '张三',
address: '滨江区信诚路',
contact: '15727678507'
}
]; /**
* renderTableData(循环数组加载列表方法)
* @param [Array] data(要加载的数组)
*/
function renderTableData(data) {
var len = data.lenght;
var lineHeight = 20; // 每行li的行高
var infoWrap = $('#J_Table');
var htmlArr = [];
var item = '';
for (var i = 0; i < len; i++) {
item = '<li>'
+ '<span>' + data[i]['name'] + '</span>'
+ '<span>' + data[i]['address'] + '</span>'
+ '<span>' + data[i]['contact'] + '</span>'
+ '</li>';
htmlArr.push(item);
} infoWrap.prepend(htmlArr.join('')); // 将htmlArr数组添加到页面元素中 infoWrap.css({
'top': - len * lineHeight + 'px'; // 设置(负每行行高*数组长度)的top值,将加载列表定位到显示区域上方(即隐藏)
}).animate({
'top': '0px' // 设置top值为0,即加载列表整个展示出来
}, 1000, 'swing', function() { // 设置间隔为1000,动画效果为"swing"(有"swing"和"linear"两种)
$('li:gt(' + (len - 1) + ')', infoWrap).remove(); // 将原先的元素内容移除
});
} /**
*timlyRenderData (定时请求的方法)
*
*/
function timlyRenderData() {
if(this.clearTimlyId) { // 如果定时请求存在,则清除
clearInterval(this.clearTimlyId);
}
this.clearTimlyId = setInterval(function() { // 创建定时请求
renderTableData(data);
}, 5000);
} renderTableData(data); //调用该方法 timlyRenderData(); // 调用定时请求方法
});

JQuery加载列表实现动画滚动(自上而下挤)的更多相关文章

  1. jquery实现移动端页面加载后,向上滚动指定距离无效引起的探索

    效果如下,页面加载完后向上滚动一段距离 最近一同事询问用jquery为何无法实现上面效果,查看代码后发现代码并没写错,   也正确引入了zepto.js,也不是版本问题(因为是移动端项目,出于性能和需 ...

  2. 【Web前沿技术】纯 CSS3 打造的10个精美加载进度条动画

    之前向大家介绍8款优秀的 jQuery 加载动画和进度条插件,今天这篇文章向大家推荐10个纯 CSS3 代码实现精美加载进度条动画效果的方案.加载动画和进度条在网站和 Web 应用中的使用非常流行,特 ...

  3. Vue中实现一个无限加载列表

    参考 https://www.jianshu.com/p/0a3aebd63a14 一个需要判断的地方就是加载中再次触发滚动的时候,不要获取数据. <!DOCTYPE html> < ...

  4. JQuery 加载 CSS、JS 文件

    JS 方式加载 CSS.JS 文件: //加载 css 文件 function includeCss(filename) { var head = document.getElementsByTagN ...

  5. 用C3中的animation和transform写的一个模仿加载的时动画效果

    用用C3中的animation和transform写的一个模仿加载的时动画效果! 不多说直接上代码; html标签部分 <div class="wrap"> <h ...

  6. Tree:加载列表数据

    Tree控件,需要提供一个树形的JSON数据,才能正常显示. 通常,开发者在后台可以这样做: 1)从数据库查询出一个列表数据 2)在后台,将列表数据转换为树形数据 3)通过JSON方式返回 在前台页面 ...

  7. jQuery加载一个html页面到指定的div里

    一.jQuery加载一个html页面到指定的div里 把a.html里面的某一部份的内容加载到b.html的一个div里.比如:加载a.html里面的<div id=“row"> ...

  8. 使用jQuery加载html页面到指定的div

    一.jQuery加载一个html页面到指定的div里 把a.html里面的某一部份的内容加载到b.html的一个div里.比如:加载a.html里面的<div id=“row"> ...

  9. jquery加载页面的方法

    jquery加载页面的方法(页面加载完成就执行),建议大家看下windows.onload与$(document).ready之间的区别.   1.$(function(){ $("#a&q ...

随机推荐

  1. [转]浅谈UML的概念和模型之UML九种图

    目录: UML的视图 UML的九种图 UML中类间的关系 上文我们介绍了,UML的视图,在每一种视图中都包含一个或多种图.本文我们重点讲解UML每种图的细节问题: 1.用例图(use case dia ...

  2. VNC Viewer连接打开remote display的VMware虚拟机出现闪退

    只需修改vnc option里面Advanced-->expert-->ColourLevel的值为“rgb222” or “full”即可. 说明:rgb111--8 colours,r ...

  3. beanshell获取响应结果数据

    http://blog.csdn.net/lluozh2015/article/details/72834014 [Jmeter]BeanShell断言--数据处理 标签: jmeter 2017-0 ...

  4. Golang 端口复用测试

    先给出结论: 同一个进程,使用一个端口,然后连接关闭,大约需要30s后才可再次使用这个端口. 测试 首先使用端口9001连接服务端,发送数据,然后关闭连接,接着再次使用端口9001连接服务端,如果连接 ...

  5. Abp问题解决集合1

    ABP学习经验 1.   视图中(控制器中直接使用仓储)会遇到使用实体外键,出现数据库连接关闭的错误 初学者经常会犯这样一个错误,没错说的就是我自己,这个问题折腾了我很长世间.还是没有细看文档,对ab ...

  6. B.A.T.M.A.N

    参考: http://wiki.openwrt.org/doc/howto/mesh.batman?s[]=batmand The Better Approach To Mobile Adhoc Ne ...

  7. AXI总线的工作流程---握手机制

    AXI总线的工作流程---握手机制 信息来源 首先分析AXI Master的工作机制 握手机制 CMD和Data的流程图: 写操作流程:write transaction flow read操作的流程 ...

  8. PHP用ActiveMq 实现消息列队

    1.各种安装 2.简单配置: jetty.xml localhost:8161 配置: activemq添加stomp的61613接口 conf/activemq.xml <transportC ...

  9. WASAPI、DirectSound/DS、WaveOut、Kernel Streaming/KS

    先放结论: ASIO:硬件支持+对应驱动程序 DS:兼容性最好,一般也是默认的. WASAPI:是Vista之后的,较佳选择输出方式. 再来详细看: ASIO.WDM都是指音频通道,就是音频数据走的路 ...

  10. Java第02次实验提纲(Java基本语法与类库)

    1. 熟悉Git 1.1 学会使用网页版的操作代码仓库(gitee) 申请账号,然后根据老师提供的链接或者二维码加入团队,然后修改昵称. fork老师提供的代码库项目,新建自己学号命名的文件并上传一些 ...