Это очень простой таймер, но мне было интересно, есть ли способ изменить цвет дисплея на красный, когда таймер достигнет 10 секунд. Я попытался разместить этот код в разных местах javascript, чтобы попытаться поместить класс внутри элемента, но он просто прикручивает его.Как изменить цвет дисплея?
if (secondsRemaining <== 10) {
timeDisplay.className += "red";
}
Вот мой JavaScript:
var secondsRemaining;
var intervalHandle;
function resetPage() {
document.getElementById("inputArea").style.display = "block";
}
function tick() {
var timeDisplay = document.getElementById("time");
var min = Math.floor(secondsRemaining/60);
var sec = secondsRemaining - (min * 60);
if (sec < 10) {
sec = "0" + sec;
}
var message = min + ":" + sec;
timeDisplay.innerHTML = message;
if (secondsRemaining === 0) {
alert("Done!");
clearInterval(intervalHandle);
resetPage();
}
// subtracts seconds remaining
secondsRemaining--;
}
function startCountdown() {
var minutes = document.getElementById("minutes").value;
if (isNaN(minutes)) {
alert("Please enter a number");
return;
}
if (minutes == "") {
alert("Please enter a number");
return;
}
secondsRemaining = minutes * 60;
intervalHandle = setInterval(tick, 1000);
document.getElementById("inputArea").style.display = "none";
}
window.onload = function() {
var inputMinutes = document.createElement("input");
inputMinutes.setAttribute("id", "minutes");
inputMinutes.setAttribute("type", "text");
var startButton = document.createElement("input");
startButton.setAttribute("type", "button");
startButton.setAttribute("value", "Start Countdown");
startButton.onclick = function() {
startCountdown();
};
document.getElementById("inputArea").appendChild(inputMinutes);
document.getElementById("inputArea").appendChild(startButton);
};
HTML:
<!DOCTYPE HTML>
<html>
<head>
<title>Countdown</title>
<link href="style.css" rel="stylesheet" type="text/css">
</head>
<body>
<div id="container">
<div id="inputArea"></div>
<h1 id="time">0:00</h1>
</div>
<script src="script.js"></script>
</body>
</html>
CSS:
body {
font-family: Roboto;
font-size: 100%
color: rgb(33, 33, 33);
}
#container {
width: 400px;
margin: auto;
}
#time {
font-size: 100px;
}
.red {
color: red;
}
Используйте функцию проверки элементов в вашем браузере, чтобы узнать, установлен ли класс –