@fuckingawesomenigga

Как сделать, чтоб скрипт работал в одну сторону?

<script>
var timerID = setInterval(function() {
$('#callModal').modal('toggle');
}, 60000); 
</script>


Есть скрипт, который вызывает попап через минуту, но если предположить сценарий, что пользователь зашел на сайт, открыл форму через 55 секунд, у него на заполнение остаётся 5... Подскажите, как исправить?
  • Вопрос задан
  • 78 просмотров
Решения вопроса 1
hzzzzl
@hzzzzl
как только случится что-то, после чего вызывать попап больше не надо, то clearTimeout(timerID)
как сверху сказали, лучше сделать таймаут через setTimeout, а не интервал - при интервале каждую минуту будет эта модалка вылезать
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
Kozack
@Kozack Куратор тега JavaScript
Thinking about a11y
  1. Уверены что setInterval а не setTimeout?
  2. Используйте $('#callModal').modal('open'); если не нужно закрывать модальное окно
  3. Когда нужно отменить таймер используйте clearInterval(timerID)
  4. Или в финкции таймера, проверяйте не делает ли пользователь что-то важное. Если нет — открыть модальное окно. Иначе пропустить итерацию
Ответ написан
Комментировать
@sharpross
setInterval как мне помнится функция которая возвращает идентификатор таймера.
Тебе надо просто после того, как вызовится показ модальной формы - остановить этот таймер.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы