您的位置:首页 > Web前端 > JQuery

基于jQuery的上下无缝滚动代码

2013-06-20 00:27 525 查看
代码如下

复制代码

$(function(){

var _wrap=$('ul.line');//定义滚动区域

var _interval=2000;//定义滚动间隙时间

var _moving;//需要清除的动画

_wrap.hover(function(){

clearInterval(_moving);//当鼠标在滚动区域中时,停止滚动

},function(){

_moving=setInterval(function(){

var _field=_wrap.find('li:first');//此变量不可放置于函数起始处,li:first取值是变化的

var _h=_field.height();//取得每次滚动高度(多行滚动情况下,此变量不可置于开始处,否则会有间隔时长延时)

_field.animate({marginTop:-_h+'px'},600,function(){//通过取负margin值,隐藏第一行

_field.css('marginTop',0).appendTo(_wrap);//隐藏后,将该行的margin值置零,并插入到最后,实现无缝滚动

})

},_interval)//滚动间隔时间取决于_interval

}).trigger('mouseleave');//函数载入时,模拟执行mouseleave,即自动滚动

});

html代码

代码如下

复制代码

<!--DEMO start-->

<div id="demo">

<h2>单行应用</h2>

<ul class="line">

<li><a title="2010年08月02日 (6)</li>

<li><a title="getElementsByTagName的简写方式" href="">getElementsByTagName的简写方式</a> 2010年06月24日 (4)</li>

</ul>

<!--//jQ版本//-->

<h2>多行应用</h2>

<ul class="mulitline">

<li><a title="2010年05月05日 (3)</li>

</ul>

<!--//多行应用//-->

</div>

<!--DEMO end-->
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: