Я пытаюсь выполнить блок кода (в основном создаст новую форму ввода и заставит фокус на этот вход) после того, как пользователь завершит ввод своего 5-значного почтового индекса. Тем не менее, я хочу создать небольшую задержку между ними, когда произойдет событие keyup, и когда оператор if проверяет. Это даст пользователям возможность исправить любые ошибки, которые они могут совершить, и не будет вынуждена немедленно перейти к следующей форме.
Это то, что у меня есть до сих пор, возможно, я использую функцию.delay()? Но не знаю, где это сказать, и не смог придумать что-нибудь, что сработает. Я все еще изучаю jQuery и очень признателен за любую помощь!
$('input#zip').keyup(function(){
if($('input#zip').val().length>=5){
// do something
}
});
Кроме того, я прошу прощения за продвинутый, если на это был дан ответ. Я сделал все возможное, чтобы найти ответ, но для меня ничего не было видно как решение.
Вы ищете setTimeout()
$('input#zip').keyup(function(){
setTimeout(delayMyExecution(), 1000);
});
function delayMyExecution(){
if($('input#zip').val().length>=5){
// do something
}
}
Посмотрите здесь несколько примеров setTimeout()
: