blob: 43ff0fb18a693ea5ac7efd3fb200b86f09aae572 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
|
---
title: document.getElementsByClassName
slug: Web/API/Document/getElementsByClassName
tags:
- API
- DOM
- Méthodes
- Reference
translation_of: Web/API/Document/getElementsByClassName
---
<p>{{APIRef("DOM")}}</p>
<p>Renvoie un objet de type tableau de tous les éléments enfants qui ont tous les noms de classe donnés. Lorsqu'il est appelé sur l'objet document, le document complet est recherché, y compris le nœud racine. Vous pouvez également appeler {{domxref ("Element.getElementsByClassName", "getElementsByClassName ()")}} sur n'importe quel élément; il retournera uniquement les éléments qui sont les descendants de l'élément racine spécifié avec les noms de classes donnés.</p>
<h2 id="Syntaxe">Syntaxe</h2>
<pre class="syntaxbox"><var>var elements</var> = document.getElementsByClassName(<em>names</em>); // or:
<var>var elements</var> = rootElement.getElementsByClassName(<em>names</em>);</pre>
<ul>
<li><var>elements</var> est une {{domxref ("HTMLCollection")}} des éléments trouvés.</li>
<li><var>names</var> est une chaîne représentant le nom de la classe des éléments à trouver.</li>
<li>getElementsByClassName peut être appelé sur n'importe quel élément, pas seulement sur le document. L'élément sur lequel il est appelé sera utilisé comme racine de la recherche.</li>
</ul>
<h2 id="Exemples">Exemples</h2>
<p>Trouve tous les éléments ayant la classe « test » :</p>
<pre class="eval"> document.getElementsByClassName('test')
</pre>
<p>Trouve tous les éléments ayant les classes « rouge » et « test » :</p>
<pre class="eval"> document.getElementsByClassName('rouge test')
</pre>
<p>Trouve tous les éléments qui ont la classe « test » à l'intérieur d'un élément ayant l'ID « main » :</p>
<pre class="eval"> document.getElementById('main').getElementsByClassName('test')
</pre>
<p>Nous pouvons également utiliser les méthodes de Array.prototype sur toute {{domxref ("HTMLCollection")}} en passant HTMLCollection comme valeur de la méthode. Ici, nous allons trouver tous les éléments div qui ont une classe de 'test':</p>
<pre class="brush: js">var testElements = document.getElementsByClassName('test');
var testDivs = Array.prototype.filter.call(testElements, function(testElement){
return testElement.nodeName === 'DIV';
});</pre>
<p>XXX writeme == Notes == Une méthode semblable existe pour <code>Element</code></p>
<h2 id="Sp.C3.A9cification">Obtenir la classe des éléments test</h2>
<p>C'est la méthode d'opération la plus couramment utilisée.</p>
<pre class="brush: html"><!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<div id="parent-id">
<p>hello word1</p>
<p class="test">hello word2</p>
<p >hello word3</p>
<p>hello word4</p>
</div>
<script>
var parentDOM = document.getElementById("parent-id");
var test=parentDOM.getElementsByClassName("test");//test is not target element
console.log(test);//HTMLCollection[1]
var testTarget=parentDOM.getElementsByClassName("test")[0];//here , this element is target
console.log(testTarget);//<p class="test">hello word2</p>
</script>
</body>
</html></pre>
<h2 id="Compatibilité_des_navigateurs">Compatibilité des navigateurs</h2>
<p>{{Compat("api.Document.getElementsByClassName")}}</p>
<h2 id="Specification">Spécification</h2>
<ul>
<li><a href="https://dvcs.w3.org/hg/domcore/raw-file/tip/Overview.html#dom-document-getelementsbyclassname">W3C: getElementsByClassName</a></li>
</ul>
|