CheckOneTwo
@CheckOneTwo
Парень, который думает что он фронтэндер.

Как запустить коллбек карусели с задержкой?

Привет всем! Есть одна очень хорошая карусель. В ней есть система колбэков, которая не заводится в моих кривых руках. Поэтому я использую такую конструкция для подхвата событий слайдера.

$('#slider').on('changed.owl.carousel', function(){
    $(this).find(".owl-item.activer").addClass('animated bounceOutUp');
});


Суть в том что мне нужно проигрывать анимацию контента слайда перед его сменой (в старом слайде) и после того как следующий слайд приедет на место, проигрывать анимацию в нем (новом слайде).

Все хорошо, но только анимация ухода проигрывается очень быстро, поэтому смене слайда нужно сделать дилей. Я не понимаю куда его можно пихать, помогите пожалуйста!

$('#slider').on('changed.owl.carousel', function(){
    setTimeout(function(){
        $(this).find(".owl-item.activer").addClass('animated bounceOutUp');
    },600);
});

Такая конструкция не работает, (возможно потому что я инвалид).
  • Вопрос задан
  • 758 просмотров
Пригласить эксперта
Ответы на вопрос 1
like-a-boss
@like-a-boss
Признайся,тебяТянетНаКодМужика,ты—программный гей
Разницы нет: на коллбек вы повесите функцию или будете событие отслеживать.
Я бы не ставил сетТаймаут, т.к. это функция отложенного вызова - попробуйте быстро покрутить вашу карусель :)

Если уж ставите, то следите за событиями

$('#slider').on('initialized.owl.carousel translated.owl.carousel', function (e) {
//т.е. инициализация(для первого вызова) и полная смена слайда

//Edited
//Возможно вам нужно очищать классы
$('.owl-item').removeClass('animated bounceOutUp');

$('.owl-item.activer').addClass('animated с заданным animation-delay bounceOutUp');
}


А вобще я не особо понял в чём ваша проблема. Делэй можно задать в css для анимации
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы