3

ID を持たず、いくつかの既存のクラスを持つ要素に (純粋な JavaScript を使用して) クラスを追加する方法はありますか? もしわたしが持っていたら:

<div class="rightAlign pushDown">...</div>

このようにするためにクラスを追加するにはどうすればよいですか

 <div class="rightAlign pushDown redOutline">...</div>

これは簡単な例です。別のクラスを追加し、CSS で元のクラスを変更したり、クラス全体を javascript で変更したりしない理由は、Dojo によって作成された要素を扱っているからです。つかむのに便利な ID を持たないものにアクセスする必要があるだけです。

私はjavascriptとDojoで作業していることに注意してください.jQueryはまったく使用できません...

4

2 に答える 2

4

道場のやり方は次のようになります。

dojo.query(".rightAlign.pushDown").addClass("redOutline");

これにより、これら2つのクラスを持つ要素を追加するクラスが追加されます

于 2013-08-01T23:34:28.097 に答える
3
var elements = document.getElementsByClassName("existing_class");
elements[0].className += " new_class";

指定したクラスを持つすべての要素にクラスを追加する場合は、ループを使用します。

for(var i = 0; i < elements.length; i++){
    elements[i].className =+ " new_class";
}

getElementsByClassNameただし、IEの古いバージョンでは動作しないと思います。

編集: IE サポートのためのポリフィル

于 2013-08-01T22:20:30.997 に答える