<script type="text/javascript"> $(function(){ var $this = $(".list"); var scrollTimer; $this.hover(function(){ clearInterval(scrollTimer); },function(){ scrollTimer = setInterval(function(){ scrollNews( $this ); }, 2000 ); }).trigger("mouseout"); }); function scrollNews(obj){ var $self = obj.find("ul:first"); var lineHeight = $self.find("li:first").height(); $self.animate({ "margin-top" : -lineHeight +"px" },500 , function(){ $self.css({"margin-top":"0px"}).find("li:first").appendTo($self); }) } </script>
每次都是从下面自己多蹦出来一个,而且数据多一条就会在下面额外多出一条显示数据..怎么让他就显示这几条然后滚动啊?
哦。建议设置第一个li向上负外边距。UL不动。只操作li的外边距
<script type="text/javascript"> $(function(){ var $this = $(".list"); var scrollTimer; $this.hover(function(){ clearInterval(scrollTimer); },function(){ scrollTimer = setInterval(function(){ scrollNews( $this ); }, 2000 ); }).trigger("mouseout"); }); function scrollNews(obj){ var $self = $(obj); var $li=$self.find("li:first"); var lineHeight = $li.height(); $li.animate({ "margin-top" : -lineHeight +"px" },500 , function(){ $li.css({"margin-top":"0px"}).appendTo($self); }) } </script>
说人话....
@林Lin:代码贴上了,就是说,将第一个li设置负的外边距,使得其从我们视野中消失,然后设置为0,恢复正常的同时,挪到最后。
@HasBug: ......我还是把图片改长点吧....
@林Lin: 晕