2015-04-03 19 views
0

我有一個非常簡單的計時器,在DIV ID「clear」內工作,我希望div的字體顏色在1分鐘時改變,並在2分鐘時改變。這似乎是可能的,但我無法弄清楚。更改javascript定時器中的字體顏色

var ho1 = document.getElementsByTagName('ho1')[0], 
clear = document.getElementById('clear'), 
seconds = 0, minutes = 0, hours = 0, 
t; 

function add() { 
seconds++; 
if (seconds >= 60) { 
    seconds = 0; 
    minutes++; 
} 

ho1.textContent = (minutes ? (minutes > 9 ? minutes : "0" + minutes) : "00") + ":" + (seconds > 9 ? seconds : "0" + seconds); 

timer(); 
} 
function timer() { 
t = setTimeout(add, 1000); 
} 
timer(); 

任何人都可以幫助我嗎?顏色是在DIV的風格中定義的。

回答

2

HoeInside你如果條件在那裏你檢查seconds

if (seconds >= 60) { 
    seconds = 0; 
    // check for minutes 
    minutes++; 
    if(minutes===1) ho1.style.color = "red"; 
    if(minutes===2) ho1.style.color = "green"; 
} 
+0

謝謝!但2分鐘後可以改變顏色嗎?我想逐分鐘改變顏色。用不同的顏色。例如:1分鐘=黃色。 3分鐘=紅色。 – user3283304 2015-04-03 11:09:53

+0

是的,檢查分鐘並更改 – mohamedrias 2015-04-03 11:10:16

+0

更新的答案與檢查分鐘 – mohamedrias 2015-04-03 11:12:26

0

使用jQuery和Switch-情況:

window.scount = 0; 

function changeColor() { 
    switch (window.scount) { 
    case 0: 
     timer('white') 
     break 
    case 1: 
     timer('red') 
     timer() 
     break 
    case 2: 
     timer('green') 
     break 
    default: 
     console.log('end') 
     break 
    } 
} 

function timer(color) { 
    $('#clear').css('background-color', color) 
    setTimeout(changeColor, 1000); 
    window.scount = window.scount + 1; 
} 
timer(black); 
+0

這個例子假定jQuery,我認爲從OP代碼中假設是不合理的。 – 2015-04-03 11:11:21

+0

@DavidHedlund http://i.stack.imgur.com/62J0l.gif – Legendary 2015-04-03 11:12:24

+0

@Legendary這是真的嗎?大聲笑 – mohamedrias 2015-04-03 11:14:18