我目前有一个有效的计时器,但我有一个CSS问题。基本上我想要的是当计时器达到30秒时,将数字变为红色。 这是我的代码
$(function () {
var $startTimer = $('#startTimer');
var $timerDisplay = $('#timerDisplay');
var time = 120;
$timerDisplay.hide();
$startTimer.click(function () {
$startTimer.prop('disabled', true);
$timerDisplay.show();
var timeRemaining = time;
var intervalId = setInterval(function () {
var timeStamp = Math.floor(timeRemaining/60) + ':' + timeRemaining%60;
$timerDisplay.text(timeStamp);
if (timeRemaining === 0) {
clearInterval(intervalId);
$timerDisplay.fadeOut();
alert('Time is up, please submit a vote :)');
$startTimer.prop('disabled', false);
} else {
timeRemaining--;
}
}, 1000);
});
});
HTML
<div id="timerDisplay"></div>
<button id="startTimer">Start Timer</button>
这是计时器的工作码笔,但不是颜色变化 http://codepen.io/Chevex/pen/RNomGG
答案 0 :(得分:1)
对timeRemaining
使用简单的条件检查,更改元素的"color"
属性。类似的东西:
$timerDisplay.css("color", (timeRemaining > 30 ? "initial" : "red"));
或者,如果你想要更简单:
if(timeRemaining <= 30)
$timerDisplay.css("color", "red");