Разрешить нажимать на кнопку раз в 15 минут
Как реализовать через куки с отсчетом времени после нажатия на кнопку что бы в течении 15 минут не было возможности нажать.
Желательно решение на php либо jquery но я думаю jquery можно обойти.
Ответы (1 шт):
Решение на чистом JS:
В CSS мы пишем класс .disabled, в котором запрещаем действия (pointer-events:none)
По клику на кнопку мы вызываем функцию Test() внутри которой после того как мы выполняем действия, мы добавляем класс .disabled к нашей кнопке, предварительно получив её из DOM по её id при помощи document.getElementById.
Теперь нам осталось убрать этот класс через 15 минут - для этого мы запускаем таймер setTimeout
я поставил 3 секунды чтобы можно было быстро увидеть что кнопка через временной промежуток снова становится активной. чтобы было 15 минут поставьте туда значение 900000
function Test() {
var btn = document.getElementById('btn');
alert('Нажатие!');
btn.classList.add('disabled');
setTimeout(function() {
btn.classList.remove('disabled');
}, 3000); //чтобы было 15 мин поставь 900000 вместо 3000
}
.disabled {
opacity: 0.5;
pointer-events: none;
}
<button id="btn" onClick="Test()">Нажать!</button>