Element: matches() method
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since April 2017.
Thematches() method of theElement interface tests whether the element would be selected by the specifiedCSS selector.
In this article
Syntax
js
matches(selectors)Parameters
selectorsA string containing validCSS selectors to test the
Elementagainst.
Return value
true if theElement matches theselectors. Otherwise,false.
Exceptions
SyntaxErrorDOMExceptionThrown if
selectorscannot be parsed as a CSS selector list.
Examples
>HTML
html
<ul> <li>Orange-winged parrot</li> <li>Philippine eagle</li> <li>Great white pelican</li></ul>JavaScript
js
const birds = document.querySelectorAll("li");for (const bird of birds) { if (bird.matches(".endangered")) { console.log(`The ${bird.textContent} is endangered!`); }}This will log "The Philippine eagle is endangered!" to the console, since the elementhas indeed aclass attribute with valueendangered.
Specifications
| Specification |
|---|
| DOM> # ref-for-dom-element-matches①> |
Browser compatibility
See also
- CSS selectors module
- Other
Elementmethods that take selectors:Element.querySelector(),Element.querySelectorAll(), andelement.closest().