b3rgin
@b3rgin
JavaScript Junior

Как добавить обратный отсчёт по нажатию кнопки? (при нажатии вместо кнопки должен появиться таймер)?

!DOCTYPE html>
<html>
<head>
	<title></title>
	<script type="text/javascript">
		var sec = 0;
var interval;

function pad(val) { 
    return val > 9 ? val : "0" + val; 
}

function showTime() {
      document.getElementById("seconds").innerHTML= diff > 0 ? Math.floor(diff / 1000) % 60 : 0;
      document.getElementById("minutes").innerHTML= diff > 0 ? Math.floor(diff / 1000 / 60) % 60 : 0;
}

function start() {
  interval = setInterval( function() {
		showTime();
  }, 1000);
};

$(".button").on('click', function() {
		start();
});
	</script>
	
</head>
<body>

<div id = "main">
	<button class="button">Закомпостировать</button>
	<span id="minutes">59</span>:<span id="seconds">60</span>
	
</div>

</body>
</html>
  • Вопрос задан
  • 234 просмотра
Решения вопроса 1
@Aricus
Создать класс с display: none;. В вёрстке добавить его к таймеру. В start() убрать класс у таймера и добавить его к кнопке.
В start() задать текущее время, для вычисления относительно него в таймере.
В showTime() дописать вызов его же через секунду.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы
24 нояб. 2024, в 03:11
500 руб./за проект
24 нояб. 2024, в 01:35
5000 руб./за проект
24 нояб. 2024, в 01:24
500 руб./за проект