Приветствую.
Имеется простой таймер обратного отсчета, по окончании которого происходит некое действие.
Как сделать так, что б у пользователя была возможность ускорить таймер по клику?
Допустим отсчет 60 сек, кликает по кнопке и списывает 1 сек, так сказать может скликать счетчик :)
Либо каждый клик ускоряет таймер до определенной скорости в 0.5 сек например.
var _Seconds = $('.timer').text(),
int;
int = setInterval(function() { // запускаем интервал
if (_Seconds > 0) {
_Seconds--; // вычитаем 1
$('.timer').text(_Seconds); // выводим получившееся значение в блок
} else {
clearInterval(int); // очищаем интервал, чтобы он не продолжал работу при _Seconds = 0
$('.div_x').addClass('xxx'); //добавляем класс на элемент 1
$('.div_y').addClass('yyy'); //добавляем класс на элемент 2
}
}, 1000);
<div class ="timer">10</div>
Вариант повесить на клик _Seconds--; работает, но при 0 таймер уходит в минусовое значение. Есть подозрение, что не хватает какой-то мелочи, но так и не смог допилить.
Если у кого есть более лучший вариант кода, я не против. Если есть не особо тяжелые варианты из коробки, я не против!
Спасибо.