.parents( [selector ] )返回: jQuery
描述: 获取当前匹配元素集合中每个元素的祖先元素,可以选择性地通过选择器进行过滤。
-
版本新增: 1.0.parents( [selector ] )
-
selector (选择器)类型:Selector一个包含选择器表达式的字符串,用于匹配元素。
-
给定一个表示一组 DOM 元素的 jQuery 对象,.parents() 方法允许我们搜索这些元素在 DOM 树中的祖先元素,并从匹配的元素中构建一个新的 jQuery 对象,按从紧邻父元素向上到更远的父元素的顺序排列;元素按照从最近的父元素到最远的父元素的顺序返回。当原始集合中有多个 DOM 元素时,结果集合也将按原始元素的相反顺序排列,并移除重复项。
.parents() 和 .parent() 方法相似,不同之处在于后者只向上遍历 DOM 树一层。此外,$( "html" ).parent() 方法返回一个包含 document 的集合,而 $( "html" ).parents() 返回一个空集。
该方法可选地接受一个与我们传递给 $() 函数的类型相同的选择器表达式。如果提供了选择器,则在包含元素之前会先测试它们是否匹配该选择器。
考虑一个带有基本嵌套列表的页面
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
|
如果我们从元素 A 开始,我们可以找到它的祖先元素
|
1
|
|
此调用的结果是为二级列表、元素 II 和一级列表(以及向上一直到 <html> 元素的所有祖先)设置红色背景。由于我们没有提供选择器表达式,所有祖先都是返回的 jQuery 对象的一部分。如果我们提供了选择器表达式,则只有在这些祖先中匹配的元素才会被包括在内。
示例
示例 1
查找每个 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
33
34
35
36
37
38
39
40
41
|
|
演示
示例 2
点击查找每个 span 元素的唯一的 div 父元素。
|
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
|
|