jQuery 遍历 siblings() 方法
siblings() 获得匹配集合中每个元素的同胞,通过选择器进行筛选是可选的。
1. 语法
.siblings(selector)
参数 | 描述 |
---|---|
selector | 字符串值,包含用于匹配元素的选择器表达式。 |
如果给定一个表示 DOM 元素集合的 jQuery 对象,.siblings() 方法允许我们在 DOM 树中搜索这些元素的同胞元素,并用匹配元素构造一个新的 jQuery 对象。
该方法接受可选的选择器表达式,与我们向 $() 函数中传递的参数类型相同。如果应用这个选择器,则将通过检测元素是否匹配该选择器对元素进行筛选。
请思考这个带有基本的嵌套列表的页面:
<ul> <li>list item 1</li> <li>list item 2</li> <li class="third-item">list item 3</li> <li>list item 4</li> <li>list item 5</li> </ul>
如果我们从第三个项目开始,则可找到该元素的同胞元素:
$('li.third-item').siblings().css('background-color', 'red');
此处调用的结果是将项目 1、2、4 和 5 的背景设置为红色。 设置为红色背景。由于我们未应用选择器表达式,所有同胞元素很自然地成为了对象的一部分。如果已应用选择器,则只会包含四个列表中的匹配的项目。
原始元素不包含在同胞元素中,当我们打算找到 DOM 树的特定层级上的所有元素时,记住一点很重要。
2. 范例
查找每个 p 元素的所有类名为 "selected" 的所有同胞元素:
$("p").siblings(".selected")
slice() 把匹配元素集合缩减为指定的指数范围的子集。1. 语法:.slice(selector,end)。selector:基于 0 的整数值,指示开始选取元素的位置。如果是负数,则指示从集合末端开始的偏移量。end:基于 0 的整数值,指示结束选取元素的位置。