У меня есть аккордеон, и вы хотите что-то вызвать, когда он закончил переход из одного состояния в другое. Следующий код вырвет ошибку Uncaught TypeError
, я просто пытаюсь console.log
, когда он закончил сейчас:JQuery. Then not working
$(document).ready(function() {
$('.accordion-tabs').each(function() {
$(this).children('li').first().children('a').addClass('is-active').next().addClass('is-open').show();
});
$('.accordion-tabs').on('click', 'li > a.tab-link', function(event) {
if (!$(this).hasClass('is-active')) {
event.preventDefault();
var accordionTabs = $(this).closest('.accordion-tabs');
accordionTabs.find('.is-open').removeClass('is-open').hide();
$(this).next().toggleClass('is-open').toggle();
accordionTabs.find('.is-active').removeClass('is-active');
$(this).addClass('is-active').then(
function() {
console.log("Accordion Finished");
});
} else {
event.preventDefault();
}
});
});
Где я буду неправильно? Это первый раз, когда я использовал .then
!
, что вы думаете, то() метод используется для? https://api.jquery.com/deferred.then/ – messerbill
Как сделать переход? Есть ли анимация css? Что вы пытаетесь сделать, кроме входа в консоль? – charlietfl
вы можете рассказать нам, что такое библиотека аккордеона? @ mike-harrison – gon250