Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Проверка запуска таймера setTimeout (https://javascript.ru/forum/events/49463-proverka-zapuska-tajjmera-settimeout.html)

Ваяс 14.08.2014 12:39

Проверка запуска таймера setTimeout
 
Не могу решить следующий вопрос, при событии keyup у меня вызывается setTimeout получается если я на клавиатуре нажимаю несколько раз значения, setTimeout вызывается несколько раз.
Как можно сделать что бы остальные таймеры не запускались?

ixth 14.08.2014 12:54

Зачем тебе? Может, это подойдет: Микропаттерны оптимизации в javascript: декораторы функций debouncing и throttling?

Ваяс 14.08.2014 13:05

Суть такая, в интернет магазине при выборе количества цветов, нужно что бы работало корректно, но опять же не сбрасывалось раньше времени
Например на сайте первыйцветочный.рф на главной странице есть розы минимум у них 11 значений. Но может быть и другое число, события срабатывают на keyup т.е. когда мы удаляем 1 у нас вновь становиться 11. Т.к. есть проверка.
А таймер нужен для того что бы можно было стереть полностью и написать заново (так хотят клиенты) соответственно таймер запускается. Когда мы кликаем на клавиатуре, и если мы удалим одно значение таймер запуститься, потом удалим второе значение, ещё запуститься один таймер, потом резко напишем своё, первый таймер завершиться, а второй ещё не завершился и вдруг мы захотим снова стереть и вот тогда у нас запускается следующий таймер из-за чего цена начинает скакать

Ваяс 14.08.2014 13:07

За ссылку спасибо, читаю, вроде то что нужно.


Часовой пояс GMT +3, время: 11:36.