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

Почему происходит возобновление таймера при его окончании?

function countdown(dateEnd) {
		  	var seconds;
		 
		  	dateEnd = new Date(dateEnd);
		  	dateEnd = dateEnd.getTime();
		 
		  	if (isNaN(dateEnd) ) {return;}
		  	timer = setInterval(calculate, 1000);
		 
		  	function calculate() {
		    	var dateStart = new Date();
		    	var dateStart = new Date(dateStart.getUTCFullYear(),
		                            dateStart.getUTCMonth(),
		                            dateStart.getUTCDate(),
		                            dateStart.getUTCHours(),
		                            dateStart.getUTCMinutes(),
		                            dateStart.getUTCSeconds());
		    	var timeRemaining = parseInt((dateEnd - dateStart.getTime()) / 1000)
		 
		    	if ( timeRemaining >= 0 ) {
		      	timeRemaining   = (timeRemaining % 40);
		      	seconds = parseInt(timeRemaining);
		 
		      	document.getElementById("seconds").innerHTML = ("0" + seconds).slice(-2);} else {clearInterval(timer);}
			}
		}
 		var d = new Date(Date.parse(new Date()) + 40 * 1000);
		countdown(d);
  • Вопрос задан
  • 82 просмотра
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Фронтенд-разработчик
    10 месяцев
    Далее
  • Skillfactory
    Профессия Веб-разработчик
    12 месяцев
    Далее
  • Яндекс Практикум
    Мидл фронтенд-разработчик
    5 месяцев
    Далее
Решения вопроса 1
Rimush
@Rimush
setTimeout позволяет вызвать функцию один раз через определённый интервал времени.
setInterval позволяет вызывать функцию регулярно, повторяя вызов через определённый интервал времени.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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