在 jQuery 中,.siblings() 方法用于选择与指定元素相邻的同辈元素。这个方法非常方便,尤其是在需要对同一父元素下的多个子元素进行操作时。以下是.siblings()方法的基本用法和一些变体:
基本用法
$(selector).siblings()
这会选择与指定选择器(selector)匹配的所有同辈元素。
例如,如果你有一个
元素,$('p').siblings() 会选择所有与指定
元素同级的其他
元素。
指定选择器
e
$(selector).siblings(filter)
在这个变体中,你可以通过 filter 参数指定一个更具体的选择器来过滤同辈元素。
例如,$('#example').siblings('.active') 会选择 ID 为 example 的元素的所有同辈元素,但仅限于那些有 active 类的元素。
用例
改变样式:
可以用 .siblings() 来改变所有同辈元素的样式。
例如:$('.highlight').siblings().css('color', 'red'); 会将除 .highlight 之外的所有同辈元素的文字颜色改为红色。
隐藏/显示元素:
可以使用 .siblings() 隐藏或显示一组元素。
例如:$('div#container').siblings().hide(); 会隐藏 div#container 的所有同辈元素。
添加或移除类:
可以用来添加或移除同辈元素的类。
例如:$('li.selected').siblings().removeClass('selected'); 会移除所有除了 li.selected 以外的同辈元素的 selected 类。
注意事项
.siblings() 不包括当前元素自身;它仅选择同辈的其他元素。
如果需要包括当前元素在内的所有同辈元素,可以使用 .siblings().andSelf()(在 jQuery 1.8 之前)或 .siblings().addBack()(jQuery 1.8 及之后)。
.siblings() 是一个非常强大的 jQuery 方法,可以大大简化 DOM 操作过程中涉及同辈元素的任务。