Заставить аккордеон Bootstrap ждать завершения работы перед расширениемJavascript

Форум по Javascript
Ответить
Anonymous
 Заставить аккордеон Bootstrap ждать завершения работы перед расширением

Сообщение Anonymous »

Нажимая кнопку «гармошка», я предпочитаю подождать, пока будет вычислено тело аккордеона, и сразу после этого развернуть его содержимое.
Иначе расширение происходит в несколько этапов по мере добавления новых элементов к телу аккордеона. Негладкий.

Код: Выделить всё

const ab = document.querySelector('.accordion-button');
ab.addEventListener('click', abListener);

function abListener(ev) {
// Heavy DOM work to build accordion body;
}
Я думал, что смогу сделать это, используя метод PreventDefault. но аккордеон все равно расширяется.

Код: Выделить всё

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
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»