2016-04-27 10 views
1

Flickity hat Event-Bindung. Gibt es ein Ereignis für das Verschieben der nächsten oder vorherigen Folie? Zum Beispiel wird die settle event ausgelöst, nachdem sich eine Folie gelegt hat. Das tut, was ich brauche, aber das Problem hier ist, dass es auch feuert, wenn Flickity sich auf der gleichen Folie niederlässt, dies würde passieren, wenn du wischst, aber nicht genug wischst und Flickity sich dort wieder ansiedelt. Die cellSelect demo scheint das Gleiche zu tun.Ereignis für wenn Flickity die nächste oder vorherige Folie erreicht

In meinem Kopf so etwas wie dies erklärt vielleicht, was ich versuche zu erreichen: wir können

$carousel.on('nextSlideReached', function() { 
    console.log('Flickity has settled on the next slide'); 
}); 

Antwort

0

Mit dem settle Ereignisse prüfen, ob wir an einer neuen Folie oder nicht entschieden haben:

var selectedIndex = flkty.selectedIndex; 

$carousel.on('settle', function() { 
    if (flkty.selectedIndex !== selectedIndex) { 

    console.log('settled at new cell', flkty.selectedIndex); 
    selectedIndex = flkty.selectedIndex; 

    // do stuff 

    } 
}); 
+0

Dieser Code sollte den selectedIndex jedes Mal aktualisieren, wenn der 'settle' aufgerufen wird, oder? Ich habe den gleichen Code und bekomme "0" für selectedIndex. – nclsvh

+0

@NicolasV hast du $ Karussell definiert ..? + Sie müssen jetzt die Flickität [Namespace] (http://flickity.metafizzy.co/extras.html#compatible-changes) aka verwenden. settle.flickity – honk31

Verwandte Themen