Как выполнить анимацию в javascript и html / css? - PullRequest
0 голосов
/ 29 января 2020

Я пытаюсь анимировать две строки таблицы, чтобы, когда общее значение второй строки стало меньше, чем первая строка, две строки поменялись местами. Когда я жестко кодирую идентификатор элемента tr, анимация работает отлично. Однако, если я динамически даю идентификатор строки таблицы, анимация портится, так как нижняя строка толкает верхнюю строку в направлении вверх. Я добавляю строки таблицы во время выполнения, поэтому приведенный ниже текст пуст. Уровень [i] содержит «b». Любая помощь будет оценена. Я использую jquery 1.4.4.

js

//Not working
$("#" + level[i] + "row").animate({ top: '-50px' }, 2000, function () {
      $("#" + level[i] + "row").prev().animate({ top: '50px' }, 2000, function () {
        });
}); 

//working
$("#brow").animate({ top: '-50px' }, 2000, function () {
       $("#brow").prev().animate({ top: '50px' }, 2000, function () {
       });
});

Html таблица

<table id="main_table" class="table table-bordered">
            <thead>
                <tr>
                    <th>Level</th>
                    <th>Name</th>
                    <th>Total</th>
                </tr>
            </thead>
            <tbody id="messagesList"></tbody>
 </table>

Выход: Рабочий Working output image

Неправильная анимация Incorrect output

ОБНОВЛЕНИЕ Итак, я понял, в чем проблема. Анимация не происходит как как только функция анимации нажата . По сути, я отправляю пользовательское событие в for l oop, которое вызовет функцию animate, а l oop будет выполнять итерацию только в том случае, если мои строки не в правильном порядке. Но поскольку строки анимируются не сразу и не устанавливается в правильном порядке , функция animate вызывается дважды и влияет на обе строки, а не просто на одну. Так есть ли способ, как я могу сделать анимацию, как только функция анимации нажата?

1 Ответ

0 голосов
/ 29 января 2020

использование Jquery библиотека для анимации

https://blog.bitsrc.io/11-javascript-animation-libraries-for-2018-9d7ac93a2c59

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