无缝滚动的小应用
来源:互联网 发布:hp g3110扫描仪软件 编辑:程序博客网 时间:2024/05/02 00:30
无缝滚动的小应用
项目要实现下面的表格内容自动往下滚动,并且无缝衔接
想到了使用以前做过的图片无缝滚动,原理就是在需要的图片列表中增加一个额外的第一张图片,比方说你要展示的图片是 img1,img2,img3,img4,然后你需要把第一张图片增加到尾部,现在要展示的图片就是img1,img2,img3,img4,img5(img1),当图片滚完img5的时候,这时候就要立刻把此时滚动的位置换到第一张图片的位置,这样就能达到无缝了。
今天做的也跟上面的类似了,可视区不滚动时最多能显示6个,我开始就在数据的最后面加了6个,但是这里出现了个问题,就是这个容器的高度比6行的高度要多点(这是基于其他同事代码上加的功能),这也很好理解,因为移动端要自适应,一开始就算不了那么准了,最后的效果会有一顿的感觉了,然后就想最后在数据后面再加在一条数据就能解决了,试了下,果然行。
(function() { // 这里是数据 var userList = ...; var length = userList.length; function insertUserList(num) { var str = ""; for (var i = 0; i < length+num; i++) { var k = i % length; str += "<div class='list-line'>"; str += "<div>"+userList[k].realname+"</div>"; str += "<div>"+userList[k].prize_name+" </div>"; str += "<div>"+userList[k].time+"</div>"; str += "</div>"; } $("#user-list").append(str); } if (userList.length <= 6) { insertUserList(0); } else { insertUserList(7); autoScroll(); } function autoScroll() { // 获取可视区的总高度 var userHeight = $("#user-list").height(); userListLineHeight = $("#user-list .list-line").height(); // 计算可视区多余的位置 var moreHeight = userHeight - userListLineHeight * 6; // 达到了这个位置,就拉到头 scrollBottomHeight = (length+1) * userListLineHeight - moreHeight, bodyList = document.querySelector("#user-list"); function ani() { setTimeout(ani, 32); bodyList.scrollTop++; if (bodyList.scrollTop >= scrollBottomHeight) { bodyList.scrollTop = userListLineHeight - moreHeight; } } ani(); } }())
阅读全文
0 0
- 无缝滚动的小应用
- 无缝滚动实例--dedecms的一个应用
- 定时器的应用(二):无缝滚动
- 用JavaScript写的无缝滚动的小案例
- JS的无缝滚动
- 图片的无缝滚动
- 无缝滚动的制作
- 无缝滚动的实现
- 无缝滚动小练习—animation
- 前端小白--marquee无缝滚动
- 无缝滚动的图片代码
- DIV的图片无缝滚动
- DIV的图片无缝滚动
- 照片无缝滚动的实现
- scrollview的无缝循环滚动
- DIV的图片无缝滚动
- 实现图片的无缝滚动
- 上下无缝滚动(应用高级盒子模型)
- python入门课程 第3章 Python变量和数据类型
- 逻辑斯谛回归与最大熵分类模型
- 设计模式——外观模式及在jdk中的应用
- 枚举中枚举值和枚举数的相互转换
- Win10 修改hosts文件
- 无缝滚动的小应用
- SpringMVC使用WebSocket在Junit环境下报 No suitable default RequestUpgradeStrategy
- Python number dig1
- 第7章 IoC容器 V (Configuration) -- Spring4.3.8参考文档中文版
- 1894
- Angular4 + Material2, Dialog 异常 Exception
- 【后缀数组】poj 3693
- Python:画图(坐标描述,title,图大小,曲线标号)
- 巧妙解决整数二进制计算1的个数