jquery向上轮播

落爺英雄遲暮 提交于 2019-11-29 03:28:08

jquery向上轮播


html代码:

<div class="box">
 <ul>
  <li>1111111111111111111111111111</li>
  <li>2222222222222222222222222222</li>
  <li>3333333333333333333333333333</li>
  <li>4444444444444444444444444444</li>
  <li>5555555555555555555555555555</li>
  <li>6666666666666666666666666666</li>
  <li>7777777777777777777777777777</li>
  <li>8888888888888888888888888888</li>
  <li>9999999999999999999999999999</li>
 </ul>

</div>


css代码:

*{margin:0;padding:0;font-size:12px;}
li{list-style:none;}
.box{margin:20px;width:320px;height:195px;border:1px solid #ddd;padding:5px 5px 10px;overflow:hidden;}

.box ul li{line-height:25px;}


js代码:

/*
* textSlider 0.1
* Dependence jquery-1.7.1.js
*/
;(function($){
 $.fn.textSlider = function(options){
   var defaults = { //初始化参数
      scrollHeight:25,
      line:1,
      speed:'normal',
      timer:2000
   };
   var opts = $.extend(defaults,options);
   this.each(function(){
     var timerID;
     var obj = $(this);
     var $ul = obj.children("ul");
     var $height = $ul.find("li").height();
     var $Upheight = 0-opts.line*$height;
     obj.hover(function(){
       clearInterval(timerID);
     },function(){
       timerID = setInterval(moveUp,opts.timer);
       });
     function moveUp(){
       $ul.animate({"margin-top":$Upheight},opts.speed,function(){
          for(i=0;i<opts.line;i++){ //只有for循环了才可以设置一次滚动的行数
           $ul.find("li:first").appendTo($ul);
          }
         $ul.css("margin-top",0);
       });
     };
     timerID = setInterval(moveUp,opts.timer);
     });
   };

})(jQuery)


$(function(){
  $(".box").textSlider({
    line:2
    });
  })

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!