.slice( start [, end ] )返回类型:jQuery
描述:把匹配的元素集合缩小为由一个索引范围指定的子集。
给定一个jQuery对象,代表了一些DOM元素,.slice()
方法构造了一个新jQuery对象,包含了原来元素的子集,从start
开始,视需要,到end
结束。提供的start
索引指示了集合中的元素的一个位置;如果省略了end
,此元素后面的所有元素都被包括在结果中。
请琢磨一个带有简单列表的网页:
1
2
3
4
5
6
7
|
|
我们可以对一些列表项应用此方法:
1
|
|
此调用的结果是第3项、第4项和第5项有了红色背景。请注意,提供的索引是基于零的,指尖的是元素在jQuery对象内的位置,不是DOM树中的位置。
end
参数允许我们进一步限制选中的范围。例如:
1
|
|
现在只有第3项和第4项被选中。索引依然是基于零的,范围扩展到指定的索引但是不包括该索引。
负数索引
jQuery的.slice()
方法模仿了JavaScript 的针对数组的.slice()
方法。它模仿的对象的功能之一是start
参数和end
参数都可以传入负数。如果提供了负数,它指示从集合的末尾开始的位置,而不是从集合的开头开始的位置。例如:
1
|
|
这次,只有第4项变红了,因为它是处于倒数第2位到倒数第1位之间的唯一项。
示例:
基于随机割分把<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
59
60
61
62
|
|
演示:
选择所有的段落,然后切分选区以只包含第一个元素。
1
|
|
选择所有的段落,然后切分选区以包含第一个和第二个元素。
1
|
|
选择所有的段落,然后切分选区以只包含第二个元素。
1
|
|
选择所有段落,然后切分选区以只包含第二个和第三个元素。
1
|
|
选择所有的段落,然后切分选区以只包含第三个元素。
1
|
|