一、.siblings()方法
.siblings()方法返回与选定元素在同一层级的所有兄弟元素。示例如下:
$(document).ready(function(){
$("h1").siblings().css({"color": "red", "border": "2px solid red"});
});
上述代码会选中所有h1元素的兄弟元素,并将它们的颜色以及边框样式改成红色。
.siblings(selector)方法可以通过指定选择器来筛选兄弟元素。示例如下:
$(document).ready(function(){
$("h1").siblings("p").css({"color": "red", "border": "2px solid red"});
});
这段代码会选中所有h1元素下的p元素,并将它们的样式改为红色。
二、.next()和.prev()方法
.next()方法返回选中元素紧接着的下一个同级元素,而.prev()方法返回选中元素紧接着的上一个同级元素。
$(document).ready(function(){
$("h1").next().css({"color": "red", "border": "2px solid red"});
});
上述代码会选中所有h1元素下的第一个同级元素,并将它的颜色以及边框样式改成红色。
.next(selector)和.prev(selector)方法可以通过指定选择器来筛选下一个/上一个同级元素。
$(document).ready(function(){
$("h1").next("p").css({"color": "red", "border": "2px solid red"});
});
这段代码会选中所有h1元素下的第一个p元素,并将它们的样式改为红色。
三、.nextAll()和.prevAll()方法
.nextAll()方法返回选中元素之后所有的同级元素,.prevAll()方法返回选中元素之前的所有同级元素。
$(document).ready(function(){
$("h1").nextAll().css({"color": "red", "border": "2px solid red"});
});
上述代码选中所有h1元素之后的同级元素,并将它们的样式改为红色。
.nextAll(selector)和.prevAll(selector)方法可以通过指定选择器来筛选下一个/上一个同级元素。
$(document).ready(function(){
$("h1").nextAll("p").css({"color": "red", "border": "2px solid red"});
});
这段代码会选中所有h1元素之后的p元素,并将它们的样式改为红色。
四、.nextUntil()和.prevUntil()方法
.nextUntil()方法返回选中元素之后,一直到指定元素之前的所有同级元素。.prevUntil()和.prevAll()方法类似。
$(document).ready(function(){
$("h1").nextUntil("ul").css({"color": "red", "border": "2px solid red"});
});
这段代码会选中所有h1元素之后,到最近的ul元素之前的所有同级元素,并将它们的样式改为红色。
五、小结
通过上述五个方法,我们可以方便地获取兄弟元素。.siblings()方法适用于所有兄弟元素的情况,.next()和.prev()方法适用于紧接着的下一个或上一个元素,.nextAll()和.prevAll()方法适用于一段区间内的所有同级元素,.nextUntil()和.prevUntil()方法适用于指定区间内的所有同级元素。