element.className不会仅在for循环JavaScript中更改我的类名

时间:2013-02-03 20:40:58

标签: javascript

我正在努力使用这个函数,但是当它在for循环中时我似乎无法使它工作。

当它不在循环内部时,它会改变我的className。

任何提示?

这是功能的作用。

 function addDiceEvent() {
           var diceClass = document.getElementsByClassName("dice")[0];
           diceClass.className = "dice-two";

           }

但是由于有很多类名为dice,我需要用循环来改变它们。

使用此代码,没有任何魔力。

function addDiceEvent() {
       var diceClass = document.getElementsByClassName("dice");
                 for(var i = 0; i<diceClass.length; i++){
         diceClass.className = "dice-two";              

       }
    }

1 个答案:

答案 0 :(得分:3)

将其更改为diceClass[i].className = "dice-two";在第一件diceClass中是一个特定元素,在第二件中它是整个元素数组。

此外,我强烈建议考虑使用jQuery,它将是一个单行的。