Skip to content

Commit

Permalink
[fr] fix: Updates to Web/API/Element/*Attribute* pages (mdn#19512)
Browse files Browse the repository at this point in the history
* fix: remove {{DOMAttributeMethods}} macro
+ add/update Specifications section
+ add/update Compat section
+ add/update See also section

* Keep old title for now

* Update Spécifications title section

* fix: flaws

* Update Specifications

* fix: change *xref to links

* fix: flaws

* fix: remove "Résumé" title

* update: Syntax section

* fix: flaws

* fix: flaws

* fix: flaws for list

* Update whole pages vs current en-US state

---------

Co-authored-by: SphinxKnight <SphinxKnight@users.noreply.github.com>
  • Loading branch information
2 people authored and ciyoe committed Apr 20, 2024
1 parent 6801030 commit 5304a44
Show file tree
Hide file tree
Showing 12 changed files with 422 additions and 205 deletions.
52 changes: 34 additions & 18 deletions files/fr/web/api/element/getattributenode/index.md
@@ -1,41 +1,57 @@
---
title: element.getAttributeNode
title: "Element : méthode getAttributeNode()"
slug: Web/API/Element/getAttributeNode
l10n:
sourceCommit: 7eed0e1e4ab478d78dc7ca23c19ae77406776e4e
---

{{ APIRef("DOM") }}
{{APIRef("DOM")}}

## Résumé
La méthode **`getAttributeNode()`**, associée à l'interface [`Element`](/fr/docs/Web/API/Element), renvoie l'attribut correspondant de l'élément courant sous la forme d'un nœud [`Attr`](/fr/docs/Web/API/Attr).

Renvoie le nœud d'attribut spécifié pour l'élément courant, en tant que noeud `Attr`.
Cette méthode est utile pour obtenir les [propriétés d'instance](/fr/docs/Web/API/Attr#propriétés) de l'attribut. Si on souhaite seulement obtenir la valeur de l'attribut, on pourra plutôt utiliser la méthode [`getAttribute()`](/fr/docs/Web/API/Element/getAttribute).

## Syntaxe

```js
var attrNode = element.getAttributeNode(attrName);
```js-nolint
getAttributeNode(attrName)
```

- `attrNode` est un nœud `Attr` pour l'attribut demandé.
- `attrName` est une chaîne de caractères qui contient le nom de l'attribut.
### Paramètres

- `attrName`
- : Une chaîne de caractères qui contient le nom de l'attribut recherché.

### Valeur de retour

Un nœud [`Attr`](/fr/docs/Web/API/Attr) pour l'attribut demandé.

## Exemple
## Exemples

```js
// html: <div id="top" />
var t = document.getElementById("top");
var idAttr = t.getAttributeNode("id");
alert(idAttr.value == "top");
let t = document.getElementById("top");
let idAttr = t.getAttributeNode("id");
console.log(idAttr.value === "top");
```

## Notes

Lorsqu'elle est appelée sur un élément HTML dans un DOM marqué comme un document HTML, `getAttributeNode` passe en minuscules son argument avant de continuer.
Lorsque cette méthode est appelée sur un élément HTML dans un DOM marqué comme un document HTML, elle transforme son argument en minuscules avant de continuer.

Les nœuds `Attr` héritent de `Node`, mais ne sont pas considérés comme faisant partie de l'arbre du document. Les attributs habituels des nœuds comme [`parentNode`](/fr/docs/Web/API/Node/parentNode), [`previousSibling`](/fr/docs/Web/API/Node/previousSibling), et [`nextSibling`](/fr/docs/Web/API/Node/nextSibling) sont `null` pour un nœud `Attr`. Vous pouvez cependant accéder à l'élément auquel cet attribut appartient grâce à la propriété `ownerElement`.

## Spécifications

{{Specifications}}

Les nœuds `Attr` héritent de `Node`, mais ne sont pas considérés comme faisant partie de l'arbre du document. Les attributs habituels des nœuds comme [parentNode](/fr/DOM/element.parentNode), [previousSibling](/fr/DOM/element.previousSibling), et [nextSibling](/fr/DOM/element.nextSibling) sont `null` pour un nœud `Attr`. Vous pouvez cependant accéder à l'élément auquel cet attribut appartient grâce à la propriété `ownerElement`.
## Compatibilité des navigateurs

[getAttribute](/fr/DOM/element.getAttribute) est habituellement utilisé à la place de `getAttributeNode` pour obtenir la valeur d'un attribut d'un élément.
{{Compat}}

## Spécification
## Voir aussi

- [DOM Level 2 Core&nbsp;: getAttributeNode](http://www.w3.org/TR/DOM-Level-2-Core/core.html#ID-217A91B8)[traduction en français](http://www.yoyodesign.org/doc/w3c/dom2-core/core.html#ID-217A91B8) (non normative)
- [HTML 5: APIs in HTML documents](http://www.whatwg.org/specs/web-apps/current-work/multipage/dom.html#apis-in-html-documents)
- [`Document.createAttribute()`](/fr/docs/Web/API/Document/createAttribute)
- [`Element.setAttributeNode()`](/fr/docs/Web/API/Element/setAttributeNode)
- [`Element.removeAttributeNode()`](/fr/docs/Web/API/Element/removeAttributeNode)
- [`Element.getAttributeNodeNS()`](/fr/docs/Web/API/Element/getAttributeNodeNS)
44 changes: 30 additions & 14 deletions files/fr/web/api/element/getattributenodens/index.md
@@ -1,35 +1,51 @@
---
title: element.getAttributeNodeNS
title: "Element : méthode getAttributeNodeNS()"
slug: Web/API/Element/getAttributeNodeNS
l10n:
sourceCommit: 7eed0e1e4ab478d78dc7ca23c19ae77406776e4e
---

{{ ApiRef() }}
{{APIRef("DOM")}}

### Résumé
La méthode **`getAttributeNodeNS()`**, associée à l'interface [`Element`](/fr/docs/Web/API/Element), renvoie le nœud [`Attr`](/fr/docs/Web/API/Attr) de l'élément courant avec l'espace de noms et le nom donnés.

Renvoie le nœud `Attr` pour l'attribut avec l'espace de noms et le nom donnés.
Cette méthode est utile pour obtenir les [propriétés d'instance](/fr/docs/Web/API/Attr#propriétés) de l'attribut. Si on souhaite seulement obtenir la valeur de l'attribut de l'espace de noms, on pourra plutôt utiliser la méthode [`getAttributeNS()`](/fr/docs/Web/API/Element/getAttributeNS).

### Syntaxe
Si on souhaite obtenir le nœud [`Attr`](/fr/docs/Web/API/Attr) d'un élément HTML et que cet attribut n'est pas dans un espace de noms, on utilisera plutôt la méthode
[`getAttributeNode()`](/fr/docs/Web/API/Element/getAttributeNode).

```js
attributeNode = element.getAttributeNodeNS(namespace, nodeName);
## Syntaxe

```js-nolint
getAttributeNodeNS(namespace, nodeName)
```

### Paramètres

- `attributeNode`
- : Le nœud pour l'attribut spécifié.
- `namespace`
- : Une chaîne spécifiant l'espace de noms de l'attribut.
- `nodeName`
- : Une chaîne spécifiant le nom de l'attribut.

\== Example == TBD The example needs to be fixed // html: \<div id="top" /> t = document.getElementById("top"); specialNode = t.getAttributeNodeNS( "<http://www.mozilla.org/ns/specialspace>", "id"); // iNode.value = "full-top"
### Valeur de retour

Le nœud [`Attr`](/fr/docs/Web/API/Attr) pour l'attribut spécifié.

## Notes

`getAttributeNodeNS()` est plus spécifique que [`Element.getAttributeNode()`](/fr/docs/Web/API/Element/getAttributeNode), car il permet de spécifier les attributs faisant partie d'un espace de noms donné. Le mutateur correspondant à cet accesseur est [`Element.setAttributeNodeNS()`](/fr/docs/Web/API/Element/setAttributeNodeNS).

## Spécifications

{{Specifications}}

### Notes
## Compatibilité des navigateurs

`getAttributeNodeNS` est plus spécifique que {{ domxref("Element.getAttributeNode") }} en ce qu'il permet de spécifier les attributs faisant partis d'un espace de noms particulier. La méthode de réglage correspondante est {{ domxref("Element.setAttributeNodeNS") }}.
{{Compat}}

### Spécification
## Voir aussi

- [DOM Level 2 Core: getAttributeNodeNS (en)](http://www.w3.org/TR/DOM-Level-2-Core/core.html#ID-ElGetAtNodeNS)[traduction en français](http://www.yoyodesign.org/doc/w3c/dom2-core/core.html#ID-ElGetAtNodeNS) (non normative)
- [`Element.getAttributeNode()`](/fr/docs/Web/API/Element/getAttributeNode)
- [`Document.createAttribute()`](/fr/docs/Web/API/Document/createAttribute)
- [`Document.createAttributeNS()`](/fr/docs/Web/API/Document/createAttributeNS)
- [`Element.setAttributeNodeNS()`](/fr/docs/Web/API/Element/setAttributeNodeNS)
55 changes: 32 additions & 23 deletions files/fr/web/api/element/getattributens/index.md
@@ -1,34 +1,38 @@
---
title: element.getAttributeNS
title: "Element : méthode getAttributeNS()"
slug: Web/API/Element/getAttributeNS
l10n:
sourceCommit: 7eed0e1e4ab478d78dc7ca23c19ae77406776e4e
---

{{APIRef("DOM")}}

**`getAttributeNS()`** est une méthode de l'interface {{domxref("Element")}} qui renvoie la valeur chaîne de l'attribut avec l'espace de noms et le nom donnés. Si l'attribut nommé n'existe pas, cette valeur sera soit `null`, soit `""` (une chaîne vide)&nbsp;; voir la section [Notes](#notes) pour plus de détails.
La méthode **`getAttributeNS()`**, associée à l'interface [`Element`](/fr/docs/Web/API/Element), renvoie la valeur, sous la forme d'une chaîne de caractères, de l'attribut avec l'espace de noms et le nom donnés. Si l'attribut nommé n'existe pas, cette valeur sera soit `null`, soit `""` (une chaîne vide)&nbsp;; voir la section [Notes](#notes) pour plus de détails.

Si vous manipulez des documents HTML et n'avez pas besoin de restreindre à un espace de noms donné, vous pouvez utiliser la méthode [`getAttribute()`](/fr/docs/Web/API/Element/getAttribute) à la place.

## Syntaxe

```js
attrVal = element.getAttributeNS(namespace, name);
```js-nolint
getAttributeNS(namespace, name)
```

### Paramètres

- `namespace`
- : L'espace de noms dans lequel rechercher l'attribut spécifié.
- `name`
- : Le nom de l'attribut à chercher.
- : Le nom de l'attribut à rechercher.

### Valeur de retour

La valeur de chaîne de caractères de l'attribut spécifié. Si l'attribut n'existe pas, le résultat est `null`.
Une chaîne de caractères avec la valeur de l'attribut recherché. Si l'attribut n'existe pas, le résultat est `null`.

> **Note :** Les versions antérieures de la spécification DOM avaient cette méthode décrite comme renvoyant une chaîne vide pour des attributs inexistants, mais elle n'était généralement pas implémentée de cette façon, car null a plus de sens. La spécification DOM4 indique maintenant que cette méthode devrait retourner null pour les attributs inexistants.
> **Note :** Les versions antérieures de la spécification DOM avaient cette méthode décrite comme renvoyant une chaîne vide pour des attributs inexistants, mais elle n'était généralement pas implémentée de cette façon, car `null` a plus de sens. La spécification DOM4 indique maintenant que cette méthode devrait retourner `null` pour les attributs inexistants.
## Exemples

Le document SVG suivant utilise une valeur d'attribut `foo` d'un espace de nom spécifique :
Le document SVG suivant utilise une valeur d'attribut `foo` d'un espace de noms spécifique&nbsp;:

```xml
<svg xmlns="http://www.w3.org/2000/svg"
Expand All @@ -37,20 +41,24 @@ Le document SVG suivant utilise une valeur d'attribut `foo` d'un espace de nom s
<circle id="target" cx="12" cy="12" r="10" stroke="#444"
stroke-width="2" fill="none" test:foo="Hello namespaced attribute!"/>

<script type="text/javascript">
var ns = 'http://www.example.com/2014/test';
var circle = document.getElementById( 'target' );
<script>
const ns = 'http://www.example.com/2014/test';
const circle = document.getElementById('target');

console.log( 'attribute test:foo: "' + circle.getAttributeNS( ns, 'foo' ) + '"' );
console.log(`attribute test:foo: "${circle.getAttributeNS(ns, 'foo')}"`);
</script>
</svg>
```

Dans un document HTML5, il faut utiliser `test:foo` pour accéder à l'attribut car les espaces de noms ne sont pas pris en charge.
Dans un document HTML, il faut utiliser `test:foo` pour accéder à l'attribut, car les espaces de noms ne sont pas pris en charge.

```html
<!doctype html>
<html>
<html lang="en-US">
<head>
<meta charset="UTF-8" />
<title>getAttributeNS() test page</title>
</head>
<body>
<svg
xmlns="http://www.w3.org/2000/svg"
Expand All @@ -68,22 +76,20 @@ Dans un document HTML5, il faut utiliser `test:foo` pour accéder à l'attribut
test:foo="Foo value" />
</svg>

<script type="text/javascript">
var ns = "http://www.example.com/2014/test";
var circle = document.getElementById("target");
console.log("Attribute value: " + circle.getAttribute("test:foo"));
<script>
const ns = "http://www.example.com/2014/test";
const circle = document.getElementById("target");
console.log(`Attribute value: ${circle.getAttribute("test:foo")}`);
</script>
</body>
</html>
```

## Notes

Les espaces de noms sont uniquement pris en charge dans les documents XML, Les documents HTML5 doivent utiliser à la place `getAttribute()` .

La méthode `getAttributeNS` diffère de {{domxref("element.getAttribute()", "getAttribute()")}} en ce qu'elle permet de spécifier les attributs faisant partie d'un espace de noms particulier, comme dans l'exemple précédent, où l'attribut fait partie d'un espace de noms fictif «&nbsp;specialspace&nbsp;» de mozilla.
La méthode `getAttributeNS` diffère de [`getAttribute()`](/fr/docs/Web/API/Element/getAttribute) en ce qu'elle permet de spécifier les attributs faisant partie d'un espace de noms particulier, comme dans l'exemple précédent, où l'attribut fait partie d'un espace de noms fictif `"test"`.

Avant la spécification DOM4, cette méthode était spécifiée pour renvoyer une chaîne vide plutôt que null pour les attributs inexistants. Cependant, la plupart des navigateurs ont renvoyé null. À partir de DOM4, la spécification dit maintenant de retourner null. Cependant, certains navigateurs plus anciens renvoient une chaîne vide. Pour cette raison, vous devez utiliser {{domxref("element.hasAttributeNS ()","hasAttributeNS ()")}} pour vérifier l'existence d'un attribut avant d'appeler `getAttributeNS()` s'il est possible que l'attribut demandé n'existe pas sur l'élément spécifié.
Avant la spécification DOM4, cette méthode était spécifiée pour renvoyer une chaîne vide plutôt que `null` pour les attributs inexistants. Cependant, la plupart des navigateurs ont renvoyé `null`. À partir de DOM4, la spécification indique de retourner `null` dans ces cas. Cependant, certains navigateurs plus anciens renvoient une chaîne vide. Pour cette raison, vous devez utiliser [`hasAttributeNS()`](/fr/docs/Web/API/Element/hasAttributeNS) pour vérifier l'existence d'un attribut avant d'appeler `getAttributeNS()` s'il est possible que l'attribut demandé n'existe pas sur l'élément spécifié.

## Spécifications

Expand All @@ -95,4 +101,7 @@ Avant la spécification DOM4, cette méthode était spécifiée pour renvoyer un

## Voir aussi

- [Code snippets:getAttributeNS](/fr/Add-ons/Code_snippets/getAttributeNS)
- [`Element.getAttribute()`](/fr/docs/Web/API/Element/getAttribute)
- [`Element.hasAttributeNS()`](/fr/docs/Web/API/Element/hasAttributeNS)
- [`Element.setAttributeNS()`](/fr/docs/Web/API/Element/setAttributeNS)
- [`Element.removeAttributeNS()`](/fr/docs/Web/API/Element/removeAttributeNS)
47 changes: 25 additions & 22 deletions files/fr/web/api/element/hasattribute/index.md
@@ -1,42 +1,36 @@
---
title: element.hasAttribute
title: "Element : méthode hasAttribute()"
slug: Web/API/Element/hasAttribute
l10n:
sourceCommit: 7eed0e1e4ab478d78dc7ca23c19ae77406776e4e
---

{{APIRef("DOM")}}

La méthode **`Element.hasAttribute()`** renvoie une **valeur booléenne** indiquant si l'élément courant possède l'attribut spécifié ou non.
La méthode **`hasAttribute()`**, associée à l'interface [`Element`](/fr/docs/Web/API/Element), renvoie une **valeur booléenne** indiquant si l'élément courant possède l'attribut spécifié ou non.

## Syntaxe

```js
var result = element.hasAttribute(name);
```js-nolint
hasAttribute(name)
```

- `result`
- : récupère la valeur de retour `true` ou `false`.
### Paramètres

- `name`
- : est une chaine de caractères représentant le nom de l'attribut.
- : Une chaine de caractères représentant le nom de l'attribut recherché.

## Exemple
### Valeur de retour

```js
var foo = document.getElementById("foo");
if (foo.hasAttribute("bar")) {
// faire quelque chose
}
```
Un booléen indiquant la présence de l'attribut.

## Polyfill
## Exemples

```js
(function (prototype) {
prototype.hasAttribute =
prototype.hasAttribute ||
function (name) {
return !!(this.attributes[name] && this.attributes[name].specified);
};
})(Element.prototype);
const toto = document.getElementById("toto");
if (toto.hasAttribute("truc")) {
// faire quelque chose
}
```

## Spécifications
Expand All @@ -46,3 +40,12 @@ if (foo.hasAttribute("bar")) {
## Compatibilité des navigateurs

{{Compat}}

## Voir aussi

- [`Element.hasAttributes()`](/fr/docs/Web/API/Element/hasAttributes)
- [`Element.hasAttributeNS()`](/fr/docs/Web/API/Element/hasAttributeNS)
- [`Element.getAttribute()`](/fr/docs/Web/API/Element/getAttribute)
- [`Element.setAttribute()`](/fr/docs/Web/API/Element/setAttribute)
- [`Element.removeAttribute()`](/fr/docs/Web/API/Element/removeAttribute)
- [`Element.toggleAttribute()`](/fr/docs/Web/API/Element/toggleAttribute)

0 comments on commit 5304a44

Please sign in to comment.