:has() JQ Home  <<  Selectors  <<  :has()

Has Element selector.

Shorthand version $(':has(selector)')

Description

The :has() selector, selects elements containing at least one element matching the specified selector.

The selector can appear in the specified element and/or descendants thereof.

If this selector is not preceded by another selector, the universal selector ("*") is implied and so the whole DOM will be searched. Use another selector as in the example below to narrow the search and improve performance.

The same results can be achieved with better performance using $("cssSelector").has(selector/DOMElement).

Syntax

Signature Description
jQuery(':has(selector)')Has Element match

Parameters

Parameter Description
selectorA valid selector.

Return

N/A.

:has() Example Selectors  <<  Top

Selects elements containing at least one element matching the specified selector.

The following example will check for 'p' elements on the page that have 'img' elements within them and apply an orange background when the button below is clicked. Check the icons at the top and bottom of the page after clicking the button.




$(function(){
  $('#btn20').on('click', function() {
    $("p :has(img)").css('backgroundColor', 'orange');
  });
}); 


Press the button below to action the above code:

Related Tutorials

jQuery Basic Tutorials - Lesson 4 - jQuery Selectors