This translation is incomplete. Please help translate this article from English

Returns an array-like object of all child elements which have all of the given class names. When called on the document object, the complete document is searched, including the root node. You may also call getElementsByClassName() on any element; it will return only elements which are descendants of the specified root element with the given class names.


var elements = document.getElementsByClassName(names); // or:
var elements = rootElement.getElementsByClassName(names);
  • elements is a live HTMLCollection of found elements.
  • names is a string representing the list of class names to match; class names are separated by whitespace
  • getElementsByClassName can be called on any element, not only on the document. The element on which it is called will be used as the root of the search.


'Test'라고 이름 지어진 모든 클래스 엘리먼트를 가져옵니다.


'Red'와 'Test'라고 이름 지어진 모든 클래스 엘리먼트를 가져옵니다.

document.getElementsByClassName('red test');

ID 엘리먼트가 'main'인 엘리먼트 안의 'Test'라고 이름 지어진 모든 클래스 엘리먼트를 가져옵니다.


We can also use methods of Array.prototype on any HTMLCollection by passing the HTMLCollection as the method's this value. Here we'll find all div elements that have a class of 'test':

var testElements = document.getElementsByClassName('test');
var testDivs =, function(testElement){
    return testElement.nodeName === 'DIV';

Get class is test elements

This is the most commonly used method of operation

<!doctype html>
    <meta charset="UTF-8">
    <div id="parent-id">
        <p>hello word1</p>
        <p class="test">hello word2</p>
        <p >hello word3</p>
        <p>hello word4</p>
        var parentDOM = document.getElementById("parent-id");
        var test=parentDOM.getElementsByClassName("test");//test is not target element

        var testTarget=parentDOM.getElementsByClassName("test")[0];//hear , this element is target
        console.log(testTarget);//<p class="test">hello word2</p>

브라우저 안정성

We're converting our compatibility data into a machine-readable JSON format. This compatibility table still uses the old format, because we haven't yet converted the data it contains. Find out how you can help!

Feature 크롬 마이크로소프트 엣지 Firefox (Gecko) Internet Explorer Opera Safari
Basic support (Yes) (Yes) 3.0 9.0 (Yes) (Yes)
Feature 안드로이드 Edge Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support ? (Yes) ? ? ? ?