aboutsummaryrefslogtreecommitdiff
path: root/files/fr/web/api/element/getattribute/index.md
blob: 410b54fe7a67659414fe09b94384fbdc369837fa (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
---
title: element.getAttribute
slug: Web/API/Element/getAttribute
tags:
  - API
  - DOM
  - Element
  - Method
  - Méthode
  - Reference
translation_of: Web/API/Element/getAttribute
---
{{APIRef("DOM")}}

`getAttribute` renvoie la valeur d'un attribut donné de l'élément spécifié. Si l'attribut n'existe pas, la valeur renvoyée sera soit `null` soit `""` (une chaine vide) ; voir {{ Anch("Notes") }} pour plus de détails.

## Syntaxe

    let attribut = element.getAttribute(nom_attribut)

où

- `attribut` est une chaine contenant la valeur de l'attribut `nom_attribut`.
- `nom_attribut` est le nom de l'attribut dont on désire connaitre la valeur.

## Exemple

Soit l'HTML :

    const div1 = document.getElementById("div1");

Exemple de JavaScript :

    const div1 = document.getElementById("div1");
    //=> <div id="div1">Hi Champ!</div>

    const attributID = div1.getAttribute("id");
    //=> "div1"

    cont alignement = div1.getAttribute("align");
    //=> null

## Description

### Sensibilité à la casse

Le paramètre `nom_attribut` est généralement sensible à la casse, mais ne l'est pas lorsqu'il est utilisé sur des éléments HTML.

### Attributs inexistants

À peu près tous les navigateurs (Firefox, Internet Explorer, Opera, Safari, Konqueror et iCab, sans que cette liste soit exhaustive) renvoient `null` lorsque l'attribut demandé n'existe pas sur l'élément spécifié. La spécification DOM indique cependant que la valeur de retour correcte dans ce cas est en fait la chaine vide `""`, et certaines implémentation DOM auront ce comportement. Par conséquent, vous devriez utiliser {{domxref("element.hasAttribute()")}} pour vérifier l'existence d'un attribut avant d'appeler `getAttribute()` s'il est possible que l'attribut n'existe pas sur l'élément spécifié.

### Récupération de nonces

Pour des raisons de sécurité, les _nonces_ [CSP](/fr/docs/Web/HTTP/CSP) des sources autres que des scripts, telles que les feuilles de style CSS, et les appels `.getAttribute("nonce")` sont interdits.

```js example-bad
let nonce = script.getAttribute("nonce");
// renvoie une chaine vide
```

Plutôt que de tenter de lire le _nonce_ via l’attribut, utilisez la propriété {{domxref("HTMLOrForeignElement/nonce", "nonce")}} :

```js
let nonce = script.nonce;
```

## Spécifications

<table class="standard-table">
  <tbody>
    <tr>
      <td><strong>Spécification</strong></td>
      <td><strong>État</strong></td>
    </tr>
    <tr>
      <td>
        {{SpecName('DOM WHATWG','#dom-element-getattribute','getAttribute()')}}
      </td>
      <td>{{Spec2('DOM WHATWG')}}</td>
    </tr>
  </tbody>
</table>

## Compatibilité des navigateurs

{{Compat("api.Element.getAttribute")}}