Вариант скликивания секунд:
var _Seconds = $('.timer').text(),
var _Clicks = 0; // счетчик кликов
int;
int = setInterval(function() { // запускаем интервал
if (_Seconds - _Clicks > 1) {
_Seconds--; // вычитаем 1
$('.timer').text(_Seconds - _Clicks); // выводим получившееся значение в блок
} else {
clearInterval(int); // очищаем интервал, чтобы он не продолжал работу при _Seconds = 0
$('.div_x').addClass('xxx'); //добавляем класс на элемент 1
$('.div_y').addClass('yyy'); //добавляем класс на элемент 2
}
}, 1000);
Тут необходимо понимать, что:
1. Обработка происходит раз в секунду, а в ситуации когда до конца осталось пара секунд можно успеть кликнуть по кнопке несколько десятков раз, но это не остановит счетчик.Пользователь все равно будет ждать ближайшего срабатывания setInterval.
2. Для более тонкой обработки алгоритм надр менять. Доберусь до компа, накидаю код.
PS: вот обещанное решение, в нем многое можно изменить и доработать, но оно прекрасно демонстрирует подход, который я хотел Вам показать: