11544 sujets

JavaScript, DOM et API Web HTML5

Bonjour,

J'ai télécharger un très simple slide-show et j'aimerai savoir si il était possible de changer l'effet de transition. En effet, l'effet de transition actuelle est un FadeIn suivi d'un FadeOut et j'aurai aimer avoir un simple "slide" (glisser). A partir de mon code, est-il possible de faire cela ?


jQuery.fn.extend({
    slideshow: function(duration) {
        var current = 0;
        var length = this.length;
        var me = this;
        this.slice(1, this.length).hide();
        function fadeBetween(elem1, elem2) {
            elem1.fadeOut(duration);
            elem2.fadeIn(duration, function() {
                if (current == length - 1) {                    
                    current = 0;
                    fadeBetween(me.last(), me.first());
                }
                else {
                    fadeBetween(me.eq(current), me.eq(++current));
                }
            });
        }
        fadeBetween(this.eq(current), this.eq(current + 1));
    }
});

$(function() {
    $('#slides li').slideshow(5000);
});


Merci d'avance,
Pour un effet de slide :


jQuery.fn.extend({
    slideshow: function(duration) {
        var current = 0;
        var length = this.length;
        var me = this;
        this.slice(1, this.length).hide();
        function slideBetween(elem1, elem2) {
            elem1.fadeOut(duration);
            elem2.slideDown(duration, function() {
                if (current == length - 1) {                    
                    current = 0;
                    slideBetween(me.last(), me.first());
                }
                else {
                    slideBetween(me.eq(current), me.eq(++current));
                }
            });
        }
        slideBetween(this.eq(current), this.eq(current + 1));
    }
});

$(function() {
    $('#slides li').slideshow(5000);
});

Modifié par tazzkiller (26 Oct 2013 - 03:23)