HTML DOM getElementsByClassName() 方法
实例
在 class="example" 列表中,用 class="child" (索引0)更改第一个列表项的文本:
var list = document.getElementsByClassName("example")[0];
list.getElementsByClassName("child")[0].innerHTML = "Milk";
亲自试一试 »
页面下方有更多实例。
定义和用法
getElementsByClassName() 方法将具有指定类名的元素的子元素的集合作为节点列表对象返回。
NodeList 对象表示节点的集合。这些节点可以通过索引号访问。索引从0开始。
提示: 可以使用 NodeList 对象的 length 属性来确定具有指定类名的子节点的数量,然后可以遍历所有节点并提取所需的信息。
浏览器支持
表中的数字指定了完全支持该方法的第一个浏览器版本。
方法 | |||||
---|---|---|---|---|---|
getElementsByClassName() | 4.0 | 9.0 | 3.0 | 3.1 | 9.5 |
语法
element.getElementsByClassName(classname)
参数值
参数 | 类型 | 描述 |
---|---|---|
classname | String | 必需。要获取的子元素的类名。 要搜索多个类名,请用空格分隔,如 "child color"。 |
技术细节
DOM 版本: | Core Level 1 Element Object |
---|---|
返回值: | NodeList 对象,表示具有指定类名的元素的子元素的集合。返回集合中的元素按其在源代码中的显示进行排序。 |
更多实例
实例
使用 <div> 元素内部的 class="child" 更改第二个元素的背景色:
var x =
document.getElementById("myDIV");
x.getElementsByClassName("child")[1].style.backgroundColor = "red";
亲自试一试 »
实例
找出一个 <div> 元素中有多少 class="child" 元素(使用NodeList对象的length属性):
var x =
document.getElementById("myDIV").getElementsByClassName("child").length;
亲自试一试 »
实例
使用 class="example" 更改元素内部的 "child" 和 "color" 类的第一个元素的背景色:
var x = document.getElementsByClassName("example")[1];
x.getElementsByClassName("child color")[0].style.backgroundColor = "red";
亲自试一试 »
实例
使用 <div> 元素内部的 class="child" 更改所有元素的背景色:
var x = document.getElementById("myDIV");
var y = x.getElementsByClassName("child");
var i;
for (i = 0; i < y.length; i++) {
y[i].style.backgroundColor = "red";
}
亲自试一试 »
相关页面
CSS 教程: CSS 语法
CSS 参考手册: CSS .class Selector
HTML DOM 参考手册: document.getElementsByClassName()
HTML DOM 参考手册: className 属性
HTML DOM 参考手册: classList 属性
HTML DOM 参考手册: HTML DOM Style 对象