2012-06-05 48 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()'。 –