Heim  >  Artikel  >  Web-Frontend  >  jQuery implementiert benutzerfreundliche Karussellbildeffekte_jquery

jQuery implementiert benutzerfreundliche Karussellbildeffekte_jquery

WBOY
WBOYOriginal
2016-05-16 16:20:58992Durchsuche

Zuerst das Rendering:

[Verarbeitung] Das Bild-Scroll-Karussell hier wurde leicht überarbeitet: Wenn Sie auf Seite 1 auf Seite 5 klicken, scrollt das Bild einzeln statt 2-3-4 -5 (Diese Art des mehrfachen Scrollens wird Ihnen helfen schwindelig);

Die Implementierungsmethode ist:

Der Rest besteht darin, den Quellcode zu teilen:

-------css-

Code kopieren Der Code lautet wie folgt:

.gy-slide-scroll {
Position: relativ;
          Breite: 320 Pixel;
Höhe: 200px;
         Überlauf: versteckt;
          übrig: 50 %;
         margin-left: -160px;
}
.gy-slide-scroll ul{
Position: absolut;
          links: 0;
oben: 0;
}
.gy-slide-btn {
         margin-top: 10px;
         text-align: center;
         Polsterung: 5px 0;
}
.gy-slide-btn span,.gy-slide-btn i {
         Rand links: 5px;
         Schriftstil: normal;
          Schriftart: 12px/1 tahoma,arial,"Hiragino Sans GB",5b8b4f53;
         Cursor: Zeiger;
Rand: 1 Pixel durchgehend #ccc;
         Polsterung: 4px 6px;
}
.gy-slide-btn .gy-slide-cur {
        Hintergrundfarbe: #999;
Farbe: #fff;
}
.gy-slide-btn .gy-slide-no{
        Farbe: #ccc;
         Cursor: Standard;
}

----------HTML---------------------

Code kopieren Der Code lautet wie folgt:


       

           

                   

  •                

  •                

  •                

  •                

  •            

       

       

            首页
            上一页
            1
            2
            3
            4
            5
            下一页
            尾页
       

   

-------------JS--------------

复制代码 代码如下:

/*----Gebrauchsanweisung
Die Struktur muss konsistent sein; bei mehrmaligem Aufruf einfach der äußersten Ebene unterschiedliche IDs oder Klassennamen zuweisen
*/
/*----Parameter
@ wrap [String] Der Klassenname oder die ID des äußeren Elements
@ auto [Boolean] Wenn nicht festgelegt, wird die Wiedergabe standardmäßig nicht automatisch ausgeführt. Wenn sie auf „true“ festgelegt ist, erfolgt die automatische Wiedergabe
@speed [Number] Bilder alle paar Sekunden wechseln, der Standardwert ist 4 Sekunden
*/
Funktion Gy_slider(opt){
This.wrap = $(opt.wrap);
This.scroll = this.wrap.find('.gy-slide-scroll ul');
This.li = this.scroll.find('li');
This.btn_num = this.wrap.find('.gy-slide-btn span');
This.btn_home = this.wrap.find('.gy-slide-home');
This.btn_end = this.wrap.find('.gy-slide-end');
This.btn_prev = this.wrap.find('.gy-slide-prev');
This.btn_next = this.wrap.find('.gy-slide-next');
This.index = 0; //Index
This.refer = 0;
This.ctrl = true;
This.len = this.li.length;
This.move_w = this.scroll.parent().width();
This.auto = opt.auto == true?true:false;
This.speed = opt.speed ||. 4;
This.init();
}
Gy_slider.prototype = {
imgShow:function(i,callback){
        var _that = this,
               _w = 0;
        switch(true){
case i              case i==this.refer: return;break;
                 default:_w = this.move_w;
            }
This.refer = i;
This.li.eq(i).css({'position':'absolute','left':_w 'px','top':0});
This.scroll.stop(true,true).animate({'left':-_w 'px'},function(){
                _that.scroll.css({'left':0});
                _that.li.attr('style','').eq(i).css({'position':'absolute','left':0,'top':0});
If(typeof callback == 'function'){
                 callback();
            }
        });
This.btn_num.removeClass("gy-slide-cur").eq(i).addClass("gy-slide-cur");
},
isStrg:function(n){
This.btn_prev.add(this.btn_next).removeClass("gy-slide-no");
If(n==0){
This.btn_prev.addClass("gy-slide-no");
           }else if(n==(this.len-1)){
This.btn_next.addClass("gy-slide-no");
}
},
btnClick:function(){
        var _that = this;
//Seitenzahlenverarbeitung
This.btn_num.click(function(){
If(_that.btn_num.index($(this))==_that.index) return;
If(!_that.ctrl) return;
               _that.ctrl = false;
               _that.index = _that.btn_num.index($(this));
               _that.isCtrl(_that.index);
               _that.imgShow(_that.index,function(){
                    _that.ctrl = true;
            });
        });
//Startseite
        this.btn_home.click(function(){
            _that.index = 0;
            _that.isCtrl(_that.index);
            _that.imgShow(_that.index);
        });
        //尾页
        this.btn_end.click(function(){
            _that.index = _that.len - 1;
            _that.isCtrl(_that.index);
            _that.imgShow(_that.index);
        });
        //上一页
        this.btn_prev.click(function(){
            if($(this).hasClass("gy-slide-no")) return;
            if(!_that.ctrl) return;
            _that.ctrl = false;
            _that.index--;
            _that.isCtrl(_that.index);
            _that.imgShow(_that.index,function(){
                _that.ctrl = true;
            });
        });
        //下一页
        this.btn_next.click(function(){
            if($(this).hasClass("gy-slide-no")) return;
            if(!_that.ctrl) return;
            _that.ctrl = false;
            _that.index ;
            _that.isCtrl(_that.index);
            _that.imgShow(_that.index,function(){
                _that.ctrl = true;
            });
        });

    },
    autoPlay:function(){
        var _that = this;
        if(this.timer) clearInterval(this.timer);
        this.timer = setInterval(function(){
            _that.index ;
            if(_that.index==_that.len){
                _that.index = 0;
            }
            _that.isCtrl(_that.index);
            _that.imgShow(_that.index);
        },this.speed*1000);
    },
    init:function(){   
        var _that = this;       
        this.btnClick();
        if(this.auto){
            this.autoPlay();
            this.wrap.hover(function(){
                clearInterval(_that.timer);
            },function(){
                _that.autoPlay();
            });
        }
    }
}


Der Code ist sehr prägnant, aber der Effekt ist sehr gut und sehr praktisch. Freunde können ihn nach der Verschönerung in ihren eigenen Projekten verwenden.

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn