JavaScript/DOM/Element/closest

Aus SELFHTML-Wiki
< JavaScript‎ | DOM‎ | Element
Wechseln zu: Navigation, Suche

Die Methode closest durchsucht die Vorfahren eines Elements auf Übereinstimmung mit einer beim Aufruf übergebenen Liste von Selektoren. Das nächste Vorfahrenelement in der Liste für das ein Selektor zutrifft wird zurückgegeben, oder der Wert null, falls kein Vorfahrenelement zu den angegebenen Selektoren passt.


Syntax

Element.prototype.closest(selectors)


Attribute
Writable true
Enumerable true
Configurable true


Beschreibung[Bearbeiten]

Die für alle Elemente definierte Methode closest erwartet beim Aufruf eine Zeichenkette, die einen oder mehrere Selektoren enthält, wobei zu beachten ist, dass anders als in einem Stylesheet fehlerhafte Syntax dazu führt, dass eine Ausnahme geworfen wird, die unbehandelt das Programm beendet. Konnte der übergebene String erfolgreich geparst werden, werden ausgehend vom Kontextobjekt alle Vorfahren auf eine Übereinstimmung mit einem Selektor überprüft, und der erste Treffer zurückgegeben.


Beispiel
<body>
    <header>
        <h1><code>Element.prototype.closest</code></h1>
    </header>
    <main>
        <p>Returns the <mark>closest</mark> ancestor that matches a given selector.</p>
    </main>
    <output></output>
    <script>
        const [mark, output] = document.querySelectorAll('mark, output');

        output.value = mark.closest('body > *').tagName; // MAIN
    </script>
</body>


Spezifikation[Bearbeiten]

W3C DOM 4.1 – closest