JS плавное удаление класса setTimeout - PullRequest
0 голосов
/ 12 января 2020

У меня есть несколько скрытых строк внутри таблицы, и я хотел бы удалить класс после расширения таблицы. Но это создает эффект мерцания или скачка. Могу ли я предотвратить это? Я хотел бы получить эффект без удаления класса JS. Чтобы быть более точным c Я пытаюсь удалить

padding: 0! Важный;

после расширения таблицы.

JS для удаления класса:

$('.accordion-toggle').click(function(event) {
    target_data = $(this);
    setTimeout(function() {
    classes = target_data.attr("class").split(/\s+/);
    id = target_data.attr("data-target").replace( /^\D+/g, '');
    console.log(classes);
    if (classes.includes('collapsed')) {
        elements = document.getElementsByClassName(id);
        for (i = 0; i < elements.length; i++) {
            elements[i].classList.add("hiddenRow");
            for (j = 0; j < elements[i].cells.length; j++){
            elements[i].cells[j].classList.add("hiddenRow");
            };
        }
    } else {
        elements = document.getElementsByClassName(id);
        console.log(elements);
        for (i = 0; i < elements.length; i++) {
            elements[i].classList.remove("hiddenRow");
            for (j = 0; j < elements[i].cells.length; j++){
            elements[i].cells[j].classList.remove("hiddenRow");
            };
        }
    };
    }, 200);
})

JSFiddle:

https://jsfiddle.net/e6L8ndhk/1/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...