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);
以上所述就是本文的全部内容了,希望大家能够喜欢。