


Сбросить счётчик setinterval при повторном клике JQuery
Здравствуйте, чё то я не могу понять как мне остановить setinterval по повторному клику, вернее:
Например я случайно нажал быстро два или три раза на кнопку, которая используя setinterval выполняет отображение блока, в течение 5 секунд, если я несколько раз подряд нажимаю а потом нажимаю по одному разу у меня что то становится с таймером и он начинает работать по одной секунде или даже меньше.
Как вообще остановить предыдущий таймер и запустить новый сразу же?
ой случайно не то написал setTimeout вот эту функцию как сбрасывать при каждом клике ?
Короче с не корректным счётчиком не разобрался, но решил сделать по другому, тут посоветовали.
$("#add_btn_click").click(function () {
var upravlenie_name = $("#upravlenie_name");
var upravlenie_alias = $("#upravlenie_alias");
var timeout_sec = 5000;
if ((upravlenie_name.val().length < 3) || (upravlenie_alias.val().length < 3)) {
$("#info-danger p").html('Вы не заполнили все поля! ');
$("#info-danger").fadeIn();
setTimeout(function () {
$("#info-danger").fadeOut();
}, timeout_sec);
} else {
upravlenie_name.val('');
upravlenie_alias.val('');
$("#info-success p").html('Управление добавлено в список! ');
$("#info-success").fadeIn();
setTimeout(function () {
$("#info-success").fadeOut();
}, timeout_sec);
}
$("#add_btn_click").attr('disabled','disabled');
setTimeout(function () {
$("#add_btn_click").removeAttr('disabled');
}, timeout_sec);
});
Тут у меня при нажатии на кнопку блокируется кнопка на 5 секунд и на эти же 5 секунд отображается информационный блок, после 5 секунд кнопка разблокируется и сообщение пропадает.
$("#button").click(function(){
clearTimeout(timeoutId)
timeoutId = setTimeout(go, 3000)
}