Иначе расширение происходит в несколько этапов по мере добавления новых элементов к телу аккордеона. Негладкий.
Код: Выделить всё
const ab = document.querySelector('.accordion-button');
ab.addEventListener('click', abListener);
function abListener(ev) {
// Heavy DOM work to build accordion body;
}
Код: Выделить всё
ab.addEventListener('click', abListener);
// mouseup, mousedown and so on...
function abListener(ev) {
ev.preventDefault();
// Heavy DOM work to build accordion body;
setTimeout(() => { /* Manually expand the accordion; */ }, 0);
}
Подробнее здесь: https://stackoverflow.com/questions/793 ... ore-expand
Мобильная версия