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");

这将添加类以添加具有这两个类的元素

于 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 支持的Polyfill

于 2013-08-01T22:20:30.997 回答