J'ai créé un site web pour un ami qui inclut un diaporama avec ses derniers posts Instagram. Le diaporama a un curseur flèche droite et gauche.Curseur Les images fonctionnent correctement pour le curseur droit mais pas pour la gauche
Le curseur droit fonctionne comme je le souhaite; il montre chaque image du tableau à chaque clic, et continue sans tenir compte du nombre de fois que l'utilisateur clique sur le curseur droit. Quand il atteint la dernière image dans le tableau, il recommence à la première image en raison d'une instruction if mise en place.
Cependant, j'ai des problèmes avec le curseur gauche et je suppose que c'est la variable de compteur? Avec le code actuel, ce qui se passe est quand je clique sur le curseur gauche (avec la page actualisée et sans même cliquer sur le curseur droit), il va à la deuxième image dans le tableau index1
, plutôt que la dernière. Ensuite, je clique à nouveau sur le curseur gauche sans aucun changement, puis quand je clique dessus, la troisième fois il va à la dernière image dans le tableau et fonctionne comme il le devrait jusqu'à ce qu'il atteigne la deuxième image dans le tableau - parce que pas aller à la première image, il saute la première image après un autre clic de rien se passe, puis va à la dernière image dans le tableau. Se répète de cette manière (désolé d'aller si en détail, mais je veux que les gens aient une idée de ce qui se passe ici si le code n'aide pas).
var sliderImages = [];
var counter = 1;
sliderImages[0] = "images/i1.png";
sliderImages[1] = "images/i2.png";
sliderImages[2] = "images/i3.png";
sliderImages[3] = "images/i4.png";
sliderImages[4] = "images/i5.png";
$("#right-arrow").click(function() {
$(".active").attr("src", sliderImages[counter]);
counter++;
$('#count').text(counter);
if (counter >= sliderImages.length) {
counter = 0;
}
});
$("#left-arrow").click(function() {
$(".active").attr("src", sliderImages[counter]);
counter--;
if (counter <= 0) {
counter = sliderImages.length
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<section id="instagram-feed">
<div class="container">
<h2>INSTAGRAM GALLERY</h2>
<div class="insta-gallery">
<img src="images/left-arrow.png" class="arrow" id="left-arrow">
<img src="images/i1.png" class="active">
<img src="images/right-arrow.png" class="arrow" id="right-arrow">
</div>
</div>
<div class="clear"></div>
</section>
Vous devriez mettre cela dans un 'Snippet' pour que nous puissions voir – Zak
Quand votre script se charge,' counter = 1'.La première chose que fait votre clic 'left-arrow' est de mettre l'image' src' à l'index correspondant dans le tableau. Un 'compteur' de 1 placera votre curseur sur le second élément du tableau. – Santi
Salut Zak, désolé, je suis nouveau à pile débordement et dois s'habituer à ces choses. Merci de l'avoir signalé. Gardera cela à l'esprit avec chaque poste à venir. – jimmy118