@vladzvezdin

Как сделать выполнение функции по таймеру?

Всем привет. Это больше теоретический вопрос. А возможно ли в js установить задержку на, если можно так выразиться, невыполнение скрипта. Сейчас поясню) Допустим у меня есть блок при наведении на который, выводится алерт. Можно ли сделать так, чтобы алерт вывелся через секунду, но важно уточнить...алерт не должен показываться (функция не должна выполнится), если убрать курсор с блока сразу же. Т.е. курсор должен находиться на блоке какое-то время, чтобы скрипт выполнился
  • Вопрос задан
  • 111 просмотров
Решения вопроса 2
alexey-m-ukolov
@alexey-m-ukolov Куратор тега JavaScript
var $target = document.querySelector('#target');

var timeoutId;

$target.addEventListener('mouseenter', function () {
  clearTimeout(timeoutId); // По идее, такого быть не должно, но я параноик
  
  timeoutId = setTimeout(function () {alert(1);}, 2000);
});

$target.addEventListener('mouseleave', function () {
  clearTimeout(timeoutId);
})

https://jsfiddle.net/alexey_m_ukolov/zokeg75d/2/
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы