Я работаю над функцией автоматического поиска для сайта.
Он использует ajax для запроса API.
В данный момент после ввода 3 символов он будет искать при каждом нажатии клавиши.
То, что я хочу, это
Case1:
Пользователь вводит тест
Выполнен поиск в течение 2 секунд. Case2:
Пользователь вводит тест
1-секундный проход
пользователь нажимает t
2-секундный проход
поиск выполняется на тесте
Case3:
Пользователь вводит тест
1-секундные проходы
пользователь нажимает t
1,5-секундный проход
пользователь нажимает i
1,5-секундный проход
пользователь нажимает n
1,5 секунды прохода
пользователь нажимает g
2 секунды прохода
поиск выполняется при тестировании
, поэтому, как вы можете видеть, действие поиска выполняется только при наличииесли в течение двух секунд после нажатия клавиши не было нажатий (или вставок), то
моя основная идея заключается в следующем.
при нажатии клавиши Вызов функции, которая устанавливает время ожидания, функция также устанавливаетпеременная, содержащая последнюю запись в текстовом поле.по истечении времени ожидания он проверяет значение в поле, чтобы увидеть, соответствует ли оно значению в переменной.
Если они совпадают, изменений не было.Так что сделайте поиск
Если они этого не сделают, то ничего не сделайте, потому что для выполнения той же проверки последует время ожидания от следующего нажатия клавиши.
Это единственный / лучший способ сделать это