@alex2pac_vasiliev
Product Designer

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

Здравствуйте, есть код простого секундомера. При клике на кнопку пауза, секундомер останавливается и картинка меняется на другую , т.е. Play. Нужно по нажатию на эту же кнопку вернуть картинку с паузой и запустить секундомер с остановленного значения времени. Как это грамотно сделать? Нужно повесить 2 события на кнопку? =\
let sec = 0;
let min = 0;

function refresh() {
	sec++;
	if(sec == 60) {
		sec = 0;
		min = min + 1;
	} else {
		min = min;
	}
	if(sec <= 9) {
		sec = "0" + sec;
	}
	time = (min <= 9 ? "0" + min : min) + ":" + sec;
	if(document.getElementById) {
		timer.innerHTML = time;
	}
	inter = setTimeout("refresh()", 1000);
	if(min == '00' && sec == '00') {
		sec = "00";
		min = "00";
		clearInterval(inter);
	}
}

function pause() {
	clearInterval(inter);
	document.getElementById("pause").src="../img/svg/play.svg";
}

<body onload="refresh();">
    <span id="timer" class="timer"></span>
            <input type="image" class="pause" id="pause" src="img/svg/pause.svg" onClick="pause();">
  • Вопрос задан
  • 238 просмотров
Пригласить эксперта
Ответы на вопрос 1
@AleksRap
Две кнопки: play и pause. У каждой свое событие

Например видна кнопка play:
- при нажатии таймер запустился
- удалилась кнопка play из DOM
- удалились события связанные с ней
- появилась кнопка pause и забиндились события связанные с ней

Если нужно изменение состояния при этом - легко реализуется через прокси
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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