Как создать задержку между keyup даже и оператором if

0

Я пытаюсь выполнить блок кода (в основном создаст новую форму ввода и заставит фокус на этот вход) после того, как пользователь завершит ввод своего 5-значного почтового индекса. Тем не менее, я хочу создать небольшую задержку между ними, когда произойдет событие keyup, и когда оператор if проверяет. Это даст пользователям возможность исправить любые ошибки, которые они могут совершить, и не будет вынуждена немедленно перейти к следующей форме.

Это то, что у меня есть до сих пор, возможно, я использую функцию.delay()? Но не знаю, где это сказать, и не смог придумать что-нибудь, что сработает. Я все еще изучаю jQuery и очень признателен за любую помощь!

 $('input#zip').keyup(function(){
    if($('input#zip').val().length>=5){
             // do something
    }
 });

Кроме того, я прошу прощения за продвинутый, если на это был дан ответ. Я сделал все возможное, чтобы найти ответ, но для меня ничего не было видно как решение.

Теги:
delay

1 ответ

1
Лучший ответ

Вы ищете setTimeout()

 $('input#zip').keyup(function(){
    setTimeout(delayMyExecution(), 1000);
 });

function delayMyExecution(){
    if($('input#zip').val().length>=5){
             // do something
    }
}

Посмотрите здесь несколько примеров setTimeout():

http://www.jquery4u.com/jquery-functions/settimeout-example/

Ещё вопросы

Сообщество Overcoder
Наверх
Меню