jQuery插件scroll实现无缝滚动效果
scroll滚动插件
支持上下左右,淡入淡出,滚动时间设置,动画时间设置,鼠标经过是否停止设置
默认配置参数可修改
$(".content").easysroll({//默认配置参数direction:"left",//滚动方向left(向左)right(向右)top(向上)bottom(向下)默认leftnumberr:"1",//每一次滚动数量默认是1delays:"1000",//完成一次动画所需时间默认是1000等于1秒scrolling:"1000",//每一次动画的时间间隔默认是1000等于1秒fadein:false,//是否支持淡入或淡出默认falseenterStop:true//鼠标移入是否暂停滚动默认是true})
html代码:
<!DOCTYPEhtml> <html> <headlang="en"> <metacharset="UTF-8"> <title>滚动插件(支持上下左右,淡入淡出,滚动时间设置,动画时间设置,鼠标经过是否停止设置)</title> <scriptsrc="js/jquery-1.7.2.min.js"type="text/javascript"></script> <scriptsrc="js/scroll.js"type="text/javascript"></script> </head> <style> *{margin:0px;padding:0px;} .content{width:1010px;height:102px;overflow:hidden;border:#4e83c2solid1px;margin:50pxauto;} .contentul{list-style:none;margin:0px;padding:0px;} .contentulli{width:100px;height:100px;border:#cccsolid1px;overflow:hidden;cursor:pointer;} </style> <body> <h1>支持上下左右,淡入淡出,滚动时间设置,动画时间设置,鼠标经过是否停止设置</h1> <divclass="content"> <ultype="box"> <li><imgsrc="uploads/allimg/150210/1-15021010125I64-lp.jpg"></li> <li><imgsrc="uploads/allimg/150210/1-1502100934032T-lp.png"></li> <li><imgsrc="uploads/allimg/150209/1-1502092312470-L.gif"></li> <li><imgsrc="uploads/allimg/150209/1-1502091243010-L.jpg"></li> <li><imgsrc="uploads/allimg/150208/1-15020Q549320-L.jpg"></li> <li><imgsrc="uploads/allimg/150204/1-150204143012445.jpg"></li> <li><imgsrc="uploads/150208/1-15020Q94340510.jpg"></li> <li><imgsrc="uploads/150207/1-15020GG54I43.jpg"></li> <li><imgsrc="uploads/allimg/131024/89.jpg"></li> <li><imgsrc="uploads/allimg/131024/85.png"></li> <li><imgsrc="uploads/allimg/131024/84.png"></li> <li><imgsrc="uploads/allimg/131024/83.jpg"></li> <li><imgsrc="uploads/allimg/131024/82.png"></li> <li><imgsrc="uploads/allimg/131024/81.png"></li> <li><imgsrc="uploads/allimg/131024/78.png"></li> </ul> </div> <div> $(".content").easysroll({<br> //默认配置参数<br> direction:"left",//滚动方向left(向左)right(向右)top(向上)bottom(向下)默认left<br> numberr:"1",//每一次滚动数量默认是1<br> delays:"1000",//完成一次动画所需时间默认是1000等于1秒<br> scrolling:"1000",//每一次动画的时间间隔默认是1000等于1秒<br> fadein:false,//是否支持淡入或淡出默认false<br> enterStop:true;//鼠标移入是否暂停滚动默认是true<br> <br> })<br> <br> </div> <script> $(".content").easysroll({ //默认配置参数 direction:"left",//滚动方向left(向左)right(向右)top(向上)bottom(向下)默认left numberr:"1",//每一次滚动数量默认是1 delays:"1000",//完成一次动画所需时间默认是1000等于1秒 scrolling:"1000",//每一次动画的时间间隔默认是1000等于1秒 fadein:false,//是否支持淡入或淡出默认false enterStop:true;//鼠标移入是否暂停滚动默认是true }) </script> </body> </html>
JS核心代码
(function($){ $.fn.easysroll=function(options){ varparameter={ direction:"left", numberr:"1", delays:"1000", scrolling:"1000", fadein:false, enterStop:true }; varops=$.extend(parameter,options); var$this=$(this); var_this=this; var_time=null; varobj=_this.find("[type='box']"); varitems=obj.find("li"); varitemsleg=items.length; varitemsW=items.outerWidth(true); varitemsH=items.outerHeight(true); var_direction=ops.direction; var_numberr=ops.numberr; var_delays=ops.delays; var_scrolling=ops.scrolling; var_fadein=ops.fadein; var_enterStop=ops.enterStop; if(_direction=="top"||_direction=="bottom") { items.css({"float":"none"}); obj.width(itemsW*itemsleg); if(_direction=="bottom"){ obj.css("margin-top",-_numberr*itemsH); } }elseif(_direction=="left"||_direction=="right"){ items.css({"float":"left"}); obj.width(itemsW*itemsleg); if(_direction=="right"){ obj.css("margin-left",-_numberr*itemsW); } }else{ alert("您配置的滚动方向有误,请重新配置"); returntrue; } functionscroll(){ if(_direction=="left"){ obj.animate({"margin-left":-_numberr*itemsW},Number(_delays),function(){ for(vari=0;i<_numberr;i++){ obj.find("li").eq(0).appendTo(obj); } obj.css({"margin-left":0}) if(_fadein){ obj.find("li").eq(0).animate({"opacity":0},Number(_delays)); obj.find("li").eq(itemsleg-1).css({"opacity":1}); } }); }elseif(_direction=="right"){ obj.animate({"margin-left":0},Number(_delays),function(){ for(vari=0;i<_numberr;i++){ obj.find("li").eq(itemsleg-1).prependTo(obj); }; obj.css("margin-left",-_numberr*itemsW); if(_fadein){ obj.find("li").eq(0).animate({"opacity":1},Number(_delays)); obj.find("li").eq(itemsleg-1).css({"opacity":0}); } }); }elseif(_direction=="top"){ obj.animate({"margin-top":-_numberr*itemsH},Number(_delays),function(){ for(vari=0;i<_numberr;i++){ obj.find("li").eq(0).appendTo(obj); } obj.css({"margin-top":0}); if(_fadein){ obj.find("li").eq(0).animate({"opacity":0},Number(_delays)); obj.find("li").eq(itemsleg-1).css({"opacity":1}); } }); }elseif(_direction=="bottom"){ obj.animate({"margin-top":0},Number(_delays),function(){ for(vari=0;i<_numberr;i++){ obj.find("li").eq(itemsleg-1).prependTo(obj); } obj.css("margin-top",-_numberr*itemsH); if(_fadein){ obj.find("li").eq(0).animate({"opacity":1},Number(_delays)); obj.find("li").eq(itemsleg-1).css({"opacity":0}); } }); } } $this.hover(function(){ if(_enterStop){ clearInterval(_time); } },function(){ _time=setInterval(scroll,_scrolling); }).trigger('mouseleave'); } })(jQuery);
以上所述就是本文的全部内容了,希望大家能够喜欢。