轻松上手,快乐学习!

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 对象