A repository of over 1000 quality jQuery plugins

jQuery .has()

Learn all about the jQuery function .has().

Given a jQuery object that represents a set of DOM elements, the .has() method constructs a new jQuery object from a subset of the matching elements. The supplied selector is tested against the descendants of the matching elements; the element will be included in the result if any of its descendant elements matches the selector.

Consider a page with a nested list as follows:

1
2
3
4
5
6
7
8
9
10
11
<ul>
<li>list item 1</li>
<li>list item 2
<ul>
<li>list item 2-a</li>
<li>list item 2-b</li>
</ul>
</li>
<li>list item 3</li>
<li>list item 4</li>
</ul>

We can apply this method to the set of list items as follows:

1
$( "li" ).has( "ul" ).css( "background-color", "red" );

The result of this call is a red background for item 2, as it is the only <li> that has a <ul> among its descendants.