基于jQuery的上下无缝滚动应用(单行或多行)

  核心jQuery代码:

  

复制代码 代码如下:

  $(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 _=_field.height();//取得每次滚动高度(多行滚动情况下,此变量不可置于开始处,否则会有间隔时长延时)

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

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

  })

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

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

  });

  演示代码:

  

   [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]