document.addEventListener("DOMContentLoaded", () => {
let timeLeft;
let timerId = null;
const display = document.getElementById("display");
const input = document.getElementById("seconds-input");
const startBtn = document.getElementById("start-btn");
const stopBtn = document.getElementById("stop-btn");
const resetBtn = document.getElementById("reset-btn");
function formatTime(seconds) {
const mins = Math.floor(seconds / 60);
const secs = seconds % 60;
return `${mins.toString().padStart(2, '0')}:${secs.toString().padStart(2, '0')}`;
}
function updateDisplay() {
display.textContent = formatTime(timeLeft);
if (timeLeft <= 0) {
clearInterval(timerId);
timerId = null;
display.classList.add("finished");
alert("Время вышло!");
}
}
startBtn.onclick = () => {
if (timerId) return;
if (!timeLeft) {
timeLeft = parseInt(input.value);
}
if (isNaN(timeLeft) || timeLeft <= 0) {
alert("Введите корректное количество секунд!");
return;
}
display.classList.remove("finished");
timerId = setInterval(() => {
timeLeft--;
updateDisplay();
}, 1000);
};
stopBtn.onclick = () => {
clearInterval(timerId);
timerId = null;
};
resetBtn.onclick = () => {
clearInterval(timerId);
timerId = null;
timeLeft = 0;
display.textContent = "00:00";
display.classList.remove("finished");
input.value = "";
};
});