2013-08-05 141 views
0

請參閱this link我正在做的事情。 我試圖使標籤更改顏色,如果它被選中。如果選擇了另一個選項,則前一個選項將變回原始顏色。選擇標籤時改變顏色

我用Google搜索,並試圖別人的代碼

function checkState(id){ 
    var layer = document.getElementById(id); 
    if(layer.childNodes[0].checked === true){ 
    layer.style.backgroundColor = "#0099CC"; 
    } 
else{ 
    layer.style.backgroundColor = "#eee" ; 
}; 
} 

,但是這會導致先前選擇的選項,選擇了第二個選項時,不改回原來的顏色。 請勿使用JQuery。

回答

2

Here's your Fiddle糾正爲實際工作。將來,請確保您的小提琴在發佈之前真正有效。

其中,我已修復語法錯誤(for(int i...)?真的?),並且已將「設置顏色恢復爲正常」以清除樣式,允許懸停效果繼續工作。

在CSS的未來版本中,你將能夠做這樣的事情:

!label>input:checked {background-color:#09c;} 

!將決定選擇的「目標」。請注意,語法尚未確定。

+0

BOOM! Quick'n'easy! – Joum

+0

所以我幾乎是正確的!我不知道如何使用小提琴,我不知道如何使用腳本標籤。謝謝。 (for(int i = 0; i Jean