2012-10-16 103 views
0

我試圖改變子元素的背景顏色。突出顯示另一個div內的div元素

這是試圖用代碼:

arrdiv[i].highlight.style.backgroundColor = "black"; 

其中的亮點是div我試圖改變名稱。 這顯然是不正確的,但希望它能證明我正在嘗試做什麼。

下面是函數:

function mainFormHideShow(id, highlight_id, arrDiv) 
{ 
    var idNum = id*1; 
    var l = arrDiv.length; 
    var i = idNum%l; 
    var highlight = 'highlight' + highlight_id; 

    for (var j=0; j<l; j++) 
    { 
     $(arrDiv[j]).hide(); 
    } 

    arrDiv[i].style.display = "block"; 

    arrdiv[i].highlight.style.backgroundColor = "black"; 

} 
+2

爲什麼這個問題被標記爲jQu ERY? – j08691

+0

他確實使用了一些jQuery,但他將其與純DOM訪問混合使用。 – ThiefMaster

+0

你能否提供HTML以及我們知道沒有愚蠢的語法錯誤。 – thatidiotguy

回答

2

我會用id屬性,而不是name財產。所以,你可以這樣做:如果你一定要使用name財產

document.getElementById('highlight').style.backgroundColor = "black"; 

,你必須做這樣的事情:

var myDivs = document.getElementsByName('highlight'); 
myDivs[0].style.backgroundColor = "black"; 

如果你正在使用jQuery:

$("#highlight").css("backgroundColor", "black"); 

或者:

$("[name=highlight]").css("backgroundColor", "black");