天天看點

jquery image scroll 圖檔無縫滾動

//調用方法
    $('.scorll_ar_left').bind('click',function(){imagescroll('.itemlist','right',3,500);});
//圖檔滾動方法
    function imagescroll(parent,Orient,number,time){
        var p=$(parent),c=p.children(),w=c.outerWidth(),l=c.length,position=p.position(),le=position.left,scro=w*number,all=w*l;
        if (p.is(":animated")) return ! 1; //動畫未結束前點選事件不能生效的
        if(Orient == 'left'){//向左運動
            if(le == (scro-all)){//最右邊 
                var value= scro-all;
                var div='';
                for (var i = 0; i < number; i++) {
                     div+='<div class="item">'+c.eq(i).html()+'</div>';
                };
                //'<div class="item">'+c.eq(0).html()+'</div><div class="item">'+c.eq(1).html()+'</div><div class="item">'+c.eq(2).html()+'</div>';
                p.append(div);
                p.css('left',value+scro+'px');
                p.animate({left:value+'px'},time);
                for(var i= 0;i < number;i++){                
                p.children().first().remove();                
                }

            }else{
                p.animate({ left: le-scro+'px' },time);
            }
        }else if(Orient == 'right'){ // 向右運動
            if(le == 0 ){//最左邊
                //添加
                 var div='';
                 for (var i = number; i > 0; i--) {
                     div+='<div class="item">'+c.eq(l-i).html()+'</div>';
                 };
                p.prepend(div);
                p.css('left',-scro+'px');
                p.animate({left:'0px'}, time);
                for(var i=0;i<number;i++){
                p.children().last().remove();
                }
                //删除
                //console.log(p.html());
            }else{
                p.animate({left:le+scro+'px'}, time);
            }
        }
    }
           

繼續閱讀