Как отследить, что в input-е перестал набираться текст?

Есть input (text).
Как-то можно реализовать следующее:
человек начинает вводить текст в input, и если после последнего набранного символа прошла, к примеру секунда, выполняется функция.
Т.е., пока набирается текст, функция не срабатывает, закончили набирать - сработала.
Событие change не подходит, событие input срабатывает после каждого введенного символа (тоже не подходит).
  • Вопрос задан
  • 87 просмотров
Решения вопроса 3
pterodaktil
@pterodaktil
js developer
debounce
import debounce from "lodash/debounce";

const TIME_OUT = 1000;
const handleSearch = debounce(({ target: { value } = {} }) => {
  //что-то делаем
}, TIME_OUT)

$yourInput.addEventListener("input", handleSearch, false);
Ответ написан
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Вешаете событие на input.
По событию уничтожаете таймер, если он есть, и запускаете новый таймер на секунду.
По таймеру выполняете нужную функцию.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Александрия Москва
от 200 000 до 250 000 руб.
Foodtronics Москва
от 100 000 до 200 000 руб.
Алгоритмика Москва
от 120 000 до 200 000 руб.
21 авг. 2019, в 12:03
3000 руб./в час
21 авг. 2019, в 11:44
750 руб./в час
21 авг. 2019, в 11:32
1000 руб./в час