jQuery循环滚动效果

本文介绍了如何使用jQuery实现滚动到底部后无缝循环向上滚动的效果,涉及了滚动条动画、元素复制与替换、以及两种不同的滚动方法:通过margin-top调整和使用slideUp/slideUp。适合前端开发者了解和实践无缝滚动效果的实现。
摘要由CSDN通过智能技术生成
  1. 滚动到底部后返回顶部
var rowBack = ()=>{
     mTop = (mTop <= -33*7 ? -33 : mTop - 132)
     var css = {'margin-top': warnHight};
     $('#list').animate(css ,800);
}
setInterval(()=>{
    if($('#list').hasClass('table')){
         rowBack()
    }
},2000)
  1. 滚动到底部后无缝连续向上循环滚动
    参考:https://www.cnblogs.com/hfx123/p/9520732.html
<ul style="border: 1px solid blue;height: 60px;width:300px;overflow: hidden;">
	<li>aaaaaaaaaaaaaaaaaaaaa</li>
	<li>bbbbbbbbbbbbbbbbbbbbb</li>
	<li>ccccccccccccccccccccc</li>
	<li>ddddddddddddddddddddd</li>
	<li>eeeeeeeeeeeeeeeeeeeee</li>
	<li>fffffffffffffffffffff</li>
	<li>ggggggggggggggggggggg</li>
	<li>hhhhhhhhhhhhhhhhhhhhh</li>
</ul>
$(function(){
//每隔两秒进行一次滚动
	var height = $("ul").height()
    var timing =setInterval(info,2000,height);
    $("ul").hover(
    	function(){clearInterval(timing);},
    	function(){timing = setInterval(info,2000,height);}
    )
})
function info(height){
	//复制第一个li
	var li =$("ul>li:eq(0)").clone();
    //使用animate对li的外边距进行调整从而达到向上滚动的效果
    $("ul>li:eq(0)").animate({marginTop:(-height)},2000,function(){
    //对已经消失的li进行删除
    $("ul>li:eq(0)").remove();
    //把复制后的li插入到最后
    $("ul").append(li);
    })
}
  1. 利用jquery的slideDown/slideUp进行滚动
    原始节点的内容不显示,设置为display:none,
    然后将#list里的节点,按顺序轮换添加到item1或item2,然后交替用slideDown来模拟滚动
<ul style="border: 1px solid blue;height:10px;width:300px;overflow: hidden;">
	<li id='item1' style="dislplay:none"></li>
	<li id='item2' style="dislplay:none"></li>
</ul>
<ul id='list' style="dislplay:none">
	<li>aaaaaaaaaaaaaaaaaaaaa</li>
	<li>bbbbbbbbbbbbbbbbbbbbb</li>
	<li>ccccccccccccccccccccc</li>
	<li>ddddddddddddddddddddd</li>
	<li>eeeeeeeeeeeeeeeeeeeee</li>
	<li>fffffffffffffffffffff</li>
	<li>ggggggggggggggggggggg</li>
	<li>hhhhhhhhhhhhhhhhhhhhh</li>
</ul>
//js代码未验证
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值