Bonjour, comment puis-je obtenir la diapositive actuelle non lorsque je clique sur le bouton suivant et précédent dans GLide.js http: / /glide.jedrzejchalubek.com/docs.html#intro.
var carousel = $('#Carousel').glide({
type: 'carousel',
startAt: 1,
touchDistance: 2,
afterInit:function(){console.log("paintSlider")},
autoplay: 0
});
console.log(carousel.current());
5 réponses
Pour une raison quelconque, la fonction carousel.current()
ne fonctionne pas.
Vous pouvez utiliser le rappel et les événements du code à la place. Exemple:
var carousel = $('#Carousel').glide({
type: 'carousel',
...
afterTransition : function(event) {
console.log(event.index); // the current slide number
}
});
De plus, carousel.index()
fonctionne aussi!
const glide = new Glide('.glide');
glide.on(['mount.after', 'run'], () => {
const currentIndex = glide.index;
console.log(currentIndex)
});
glide.mount();
Ça marche pour moi:
jQuery(document).ready(function(){
var glide = jQuery('.slider').glide({
afterTransition : function() {
console.log(glide.current());
}
}).data('api_glide'); // data('api_glide') to get opportunity to use glide.current()
});
const glide = new Glide('.glide');
glide.on("run", () => {
console.log(slider.index);
});
Je ne sais pas pourquoi, mais la documentation sur l'accès à l'API est manquante. Je vais arranger ça.
Vous devez accéder à l'api via .data('glide_api')
, avant de faire des appels api.
var carousel = $('#Carousel').glide({
type: 'carousel',
startAt: 1,
touchDistance: 2,
afterInit:function(){console.log("paintSlider")},
autoplay: 0
}).data('glide_api');
console.log(carousel.current());
Merci d'utiliser le plugin!
Questions connexes
De nouvelles questions
javascript
Pour des questions concernant la programmation dans ECMAScript (JavaScript / JS) et ses divers dialectes / implémentations (hors ActionScript). Veuillez inclure toutes les balises pertinentes dans votre question; par exemple, [node.js], [jquery], [json], etc.