У меня есть яваскрипт функция, которая идет как это:Javascript ждать до функции завершения
$(document).keydown(function(e) {
switch(e.which) {
case 38:
moveUp();
break;
case 40:
moveDown();
break;
}
});
function moveDown() {
$('element').animate({top: "100%"}, {duration: 1000 });
}
function moveUp() {
$('element').animate({top: "-100%"}, {duration: 1000 });
}
Моим вопрос заключается в том, как бы создать задержку в функции keydown
, что сообщает ему, что он должен подождать, пока функции moveUp()/movedown()
закончен, прежде чем снова вызвать функцию без создания очереди?
Благодарим вас за консультацию, кстати, я не могу использовать setTimeout
, потому что это вызовет задержку при каждой начальной функции.
https://api.jquery.com/delay/ возможно? – mplungjan
Выполните ['setTimeout'] (https://developer.mozilla.org/en-US/docs/Web/API/WindowTimers/setTimeout) за 1 секунду/секундомер? – Shubh
Что вы хотите, если пользователь нажимает вверх/вниз во время анимации? Должна ли их нажатие нажать кнопку после анимации? Или его следует игнорировать? – smarx