Element.closest()

Cet article nécessite une relecture rédactionnelle. Voici comment vous pouvez aider.

Cette traduction est incomplète. Aidez à traduire cet article depuis l'anglais.

Cette fonction est expérimentale
Puisque cette fonction est toujours en développement dans certains navigateurs, veuillez consulter le tableau de compatibilité pour les préfixes à utiliser selon les navigateurs.
Il convient de noter qu'une fonctionnalité expérimentale peut voir sa syntaxe ou son comportement modifié dans le futur en fonction des évolutions de la spécification.

La fonction Element.closest() retourne le plus proche parent de l'élément courant (ou de l'élément lui-même) qui correspond au sélecteur donné en paramètre. Si aucun élément ne correspond, la fonction retournera null.

Syntax

var elt = element.closest(selectors); 

Parameters

  • selectors est de type DOMString contenant un sélecteur, par exemple "p:hover, .toto + q"
  • element est de type Element au sommet de l'arborescence d'éléments à traiter.

Result value

  • elt est de type Element qui est le plus proche du parent des éléments sélectionnés. Il peut être null.

Exceptions

  • SyntaxError est levée si le sélecteur n'est pas une chaîne de la liste de sélection valide.

Example

<article>
  <div id="div-01">Voici div-01
    <div id="div-02">Voici div-02
      <div id="div-03">Voici div-03</div>
    </div>
  </div>
</article>
var el = document.getElementById('div-03');

var r1 = el.closest("#div-02");
// Retourne l'élément ayant l'id div-02

var r2 = el.closest("div div");
// Retourne le plus proche parent étant une div dans une div, dans ce cas div-03 lui-même

var r3 = el.closest("article > div");  
// Retourne le plus proche parent étant une div ayant un parent article, dans ce cas div-01

var r4 = el.closest(":not(div)");
// Retourne le plus proche parent n'étant pas une div, dans ce cas article

Specifications

Specification Status Comment
DOM
La définition de 'Element.closest()' dans cette spécification.
Standard évolutif Définition initiale.

Browser compatibility

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Support simple 41 35.0 (35.0) Pas de support 28 9
Feature Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Support simple ? 35.0 (35.0) Pas de support ? 9.0

See also

Étiquettes et contributeurs liés au document

 Contributeurs à cette page : Teepo
 Dernière mise à jour par : Teepo,