setTimeout не работает в event listener
Почему-то не работает setTimeout внутри addEventListener.
<button id="button" class="search-form__btn" type="submit">Найти</button>
document.getElementById('button').addEventListener('click', function () {
setTimeout(() => {
console.log('alert с таймером 3 секунды')
}, 3000)})
Должен через 3 сек после нажатия на кнопку выдать console.log(). Кнопка нажимается - ничего не происходит.
Ответы (2 шт):
Автор решения: vsemozhebuty
→ Ссылка
Видимо, проблема в чём-то другом, потому что ваш фрагмент работает:
document.getElementById('button').addEventListener('click', function () {
setTimeout(() => {
console.log('alert с таймером 3 секунды')
}, 3000)})
<button id="button" class="search-form__btn" type="submit">Найти</button>
Автор решения: Grundy
→ Ссылка
Проблема в type="submit" - при отправке формы происходит перезагрузка и обработчик setTimeout просто не успевает выполниться.