Как сбросить тайм-аут в Javascript / jQuery?
У меня есть поле A на моей веб-странице, которое при редактировании пользователем вызывает вызов API (с использованием jQuery), который обновляет поле B. После редактирования API следует вызывать каждые 10 секунд, чтобы снова обновить поле B , В настоящее время я делаю это с помощью:
setTimeout(thisFunction, 10000);
Проблема заключается в том, что этот тайм-аут устанавливается каждый раз, когда пользователь редактирует поле A, что после редактирования поля A пару раз приводит к тому, что тайм-аут устанавливается многократно, а API вызывается много-много раз. Это делает веб-сайт довольно напряженным.
Я бы предпочел установить новый таймаут каждый раз, когда поле редактируется, будь то поле редактирования пользователем A или интервал, достигающий 10 секунд, и, таким образом, опроса API. Другими словами; поле должно быть обновлено, если поле B не обновлялось в течение 10 или более секунд.
Наконец, если пользователь затем нажимает кнопку C, опрос должен быть остановлен.
Итак, мой вопрос; как я могу запустить функцию для обновления поля B, если это поле B не обновлялось в течение 10 или более секунд, и как мне остановить опрос, когда я хочу (когда пользователь нажимает другую кнопку) Все советы приветствуются!