2012-06-05 75 views
0

我需要幫助找到具有特定類名稱的元素,然後用新的類名稱替換它。這是我想出的代碼。我沒有得到任何結果。類名稱不會更改,並且控制檯中沒有錯誤。用javascript替換類名稱

更新的代碼

var classMatches = document.querySelectorAll(".crux.attachFlash"); 
for (var i = 0; i < classMatches.length; i++) { 
    classMatches[i].className = " "; 
} 
+1

您正在循環但從未使用'i'實際訪問集合中的單個元素。 –

回答

3

因爲你需要修改匹配的元素,而不是元素的數組的類名:

var classMatches = document.querySelectorAll(".crux.attachFlash"); 
for (var i = 0; i < classMatches.length; i++) { 
    classMatches[i].className = " "; 
} 

你忘了[i]指數,所以你試圖爲整個數組設置className(正如你發現的那樣,它不起作用)。

+0

啊!非常感謝你,清除它:)哦,如果我能再問一件事。如果我想用'getElementsByClassName'而不是'querySelectorAll'你能告訴我怎麼做? –

+0

據我所知,沒有區別;只需將'getElementsByClassName()'替換爲'querySelectorAll()'。 –