如果我使用
var temp = document.querySelectorAll(".class");
for (var i=0, max=temp.length; i<max; i++) {
temp[i].className = "new_class";
}
一切正常。所有节点都会更改它们的类。但是,使用 gEBCN:
var temp = document.getElementsByClassName("class");
for (var i=0, max=temp.length; i<max; i++) {
temp[i].className = "new_class";
}
我得到错误。代码在某个时候跳出循环,没有完成带有 msg“can't set className of null”的工作。
我知道这是静态与实时节点列表问题(我认为),但是由于 gEBCN 速度要快得多,而且我需要遍历巨大的节点列表(树),我真的很想使用 getElementsByClassName。
我能做些什么来坚持使用 gEBCN 而不会被迫使用 querySelectorAll?