je le jQuery suivant:Cycle Backwards des diapositives
var $active = $('#slideshow li.active');
if ($active.length == 0) $active = $('#slideshow li:last');
// use this to pull the images in the order they appear in the markup
var $next = $active.next().length ? $active.next()
: $('#slideshow li:first');
// uncomment the 3 lines below to pull the images in random order
// var $sibs = $active.siblings();
// var rndNum = Math.floor(Math.random() * $sibs.length);
// var $next = $($sibs[ rndNum ]);
$active.addClass('last-active');
$next.css({opacity: 0.0})
.addClass('active')
.animate({opacity: 1.0}, 500, function() {
$active.removeClass('active last-active');
});
Comment puis-je modifier ce afin que je puisse le cycle en arrière?
Je suis si loin, mais il ne revient pas au dernier élément du premier. Il doit y avoir quelque chose d'assez simple qui me manque mais je n'arrive vraiment pas à le mettre en valeur.
var $active = $('#slideshow li.active');
if ($active.length == 0){ $active = $('#slideshow li:last');}
// use this to pull the images in the order they appear in the markup
var $next = 0 ? $active.prev()
: $('#slideshow li:first');
// uncomment the 3 lines below to pull the images in random order
// var $sibs = $active.siblings();
// var rndNum = Math.floor(Math.random() * $sibs.length);
// var $next = $($sibs[ rndNum ]);
$active.addClass('last-active');
$next.css({opacity: 0.0})
.addClass('active')
.animate({opacity: 1.0}, 500, function() {
$active.removeClass('active last-active');
});
@JohnathanSampson merci beaucoup! Je savais que c'était quelque chose comme ça mais je luttais vraiment pour lire le jQuery. J'aime essayer et iterpret en anglais mais jsut luttant pour lire exactement ce que le code a fait. –
Comment lit-il exactement if ($ active.prev(). Length) ? Est-ce qu'il demande s'il y a une longueur? –
@AntonioMoore "Si nous avons des éléments précédents." La partie '.length' compte la partie' .prev() '. Donc, c'est comme demander "Combien de .prev() avons-nous?" S'il n'y en a pas, '0' sera la valeur, et ceci est considéré comme * falsy * en JavaScript. jQuery renvoie 1 élément avec '.prev()', donc nous attendons que '.length' soit' 1'. Si ce n'est pas le cas, nous savons que nous n'avons aucun élément précédent. – Sampson