注册 登录
编程论坛 JavaScript论坛

怎么样操作元素中的所有元素

newoweb 发布于 2009-08-05 20:22, 781 次点击
<div id=A1>
<div>1</div>
<div>2</div>
<div>3</div>
...........
</div>
我现在要将A1元素中的所有子元素背景色改为红色也就是style.background="#ff0000"
现在的方法
var objs = document.getElementsByTagName("div")[0].childNodes;
for(var i=0;i<objs.length;i++){
   objs[i].style.background="#ff0000";
}
但这样枚举太慢了,div元素中的子元素都一样,要改的格式和参数也是一样的
有没有简单高效的代码一下就改好的呢
2 回复
#2
快乐梦游2009-08-12 22:22
<style>
#A1.red *{background:red; }
</style>
<body>
<div id=A1>
<div>1</div>
<div>2</div>
<div>3</div>
</div>
<button onclick="A1.className=A1.className==''?'red':''">change color</button>

用className来管理状态是最高效的
#3
newoweb2009-08-13 20:26
果然好用谢谢了
1