Как блокировать повторное нажатие на ссылку?
Имеется следующая ссылка: <a href="/post">Отправить</a>, при нажатии отправляется запрос, который задерживается в течении 2-3 секунды, при втором разе (повторном) хотел бы заблокировать ссылку? или менять содержимое на href="#" (чтоб по несколько раз не нажимали) приведите пример по обоим случаям пожалуйста.
Ответы (1 шт):
Автор решения: xydope
→ Ссылка
let link = document.querySelector('.link')
let clickable = true;
link.onclick = (event) => {
event.preventDefault()
if (clickable) {
console.log('click')
clickable = false;
//второй вариант event.currentTarget.setAttribute('href', '/somelink')
setTimeout(() => {
clickable = true
//второй вариант event.currentTarget.setAttribute('href', '#')
console.log('Снова работает')
}, 4000)
} else
console.log('отключена')
}
<a href="#" class="link">Отправить</a>