Задать вопрос
@vladzvezdin

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

Всем привет. Это больше теоретический вопрос. А возможно ли в js установить задержку на, если можно так выразиться, невыполнение скрипта. Сейчас поясню) Допустим у меня есть блок при наведении на который, выводится алерт. Можно ли сделать так, чтобы алерт вывелся через секунду, но важно уточнить...алерт не должен показываться (функция не должна выполнится), если убрать курсор с блока сразу же. Т.е. курсор должен находиться на блоке какое-то время, чтобы скрипт выполнился
  • Вопрос задан
  • 114 просмотров
Подписаться 1 Простой 2 комментария
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Фронтенд-разработчик
    10 месяцев
    Далее
  • Skillbox
    JavaScript
    3 месяца
    Далее
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
Решения вопроса 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/
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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