.parents( [selector ] ) Returns: jQuery
Description: Get the ancestors of each element in the current set of matched elements, optionally filtered by a selector.
-
version added: 1.0.parents( [selector ] )
-
selectorType: SelectorA string containing a selector expression to match elements against.
-
Given a jQuery object that represents a set of DOM elements, the .parents()
method allows us to search through the ancestors of these elements in the DOM tree and construct a new jQuery object from the matching elements ordered from immediate parent on up; the elements are returned in order from the closest parent to the outer ones. The .parents()
and .parent()
methods are similar, except that the latter only travels a single level up the DOM tree.
The method optionally accepts a selector expression of the same type that we can pass to the $()
function. If the selector is supplied, the elements will be filtered by testing whether they match it.
Consider a page with a basic nested list on it:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
|
If we begin at item A, we can find its ancestors:
1
|
|
The result of this call is a red background for the level-2 list, item II, and the level-1 list (and on up the DOM tree all the way to the <html>
element). Since we do not supply a selector expression, all of the ancestors are part of the returned jQuery object. If we had supplied one, only the matching items among these would be included.
Examples:
Example: Find all parent elements of each b.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
|
Example: Click to find all unique div parent elements of each span.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
|