所謂的“向後查找兄弟元素”,就是找到某個元素之後的兄弟元素。在jQuery中,提供了3種為我們向後查找兄弟元素的方法:
兄弟元素,指的是該元素在同一個父元素下的“同級”元素。
在jQuery中,我們可以使用next()方法來查找某個元素的後一個“相鄰”的兄弟元素。
語法:
$().next()
說明:
一般情況下,next()方法是沒有參數的,這一點跟prev()方法類似。
舉例:
在線測試
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script type="text/javascript" src="../App_js/jquery-1.12.0.min.js"></script>
<script type="text/javascript">
$(function () {
$("#lvye").prev().css("color", "red");
})
</script>
</head>
<body>
<ul>
<li>紅色red</li>
<li>橙色orange</li>
<li>黃色yellow</li>
<li id="lvye">綠色green</li>
<li>青色cyan</li>
<li>藍色blue</li>
<li>紫色purple</li>
</ul>
</body>
</html>
在浏覽器預覽效果如下:
分析:
$("#lvye").next()表示選取id為lvye的後一個相鄰的兄弟元素,即內容為“青色cyan”這個li元素。
nextAll()方法跟next()方法相似,都是用來向後查找所選元素的兄弟元素,但是next()方法只能查找所選元素後一個“相鄰”的兄弟元素,而nextAll()可以查找所選元素後面“所有”同級的兄弟元素。
語法:
nextAll(expression)
說明:
參數expression表示jQuery選擇器表達式字符串,用於過濾匹配元素。當參數省略時,則表示查找所選元素的後面“所有”的兄弟元素;當參數不省略時,則查找所選元素後面“符合條件”的兄弟元素。
舉例:
在線測試
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script type="text/javascript" src="../App_js/jquery-1.12.0.min.js"></script>
<script type="text/javascript">
$(function () {
$("#lvye").nextAll().css("color", "red");
})
</script>
</head>
<body>
<ul>
<li>紅色red</li>
<li>橙色orange</li>
<li>黃色yellow</li>
<li id="lvye">綠色green</li>
<li>青色cyan</li>
<li>藍色blue</li>
<li>紫色purple</li>
</ul>
</body>
</html>
在浏覽器預覽效果如下:
分析:
$("#lvye").nextAll()表示選擇id為lvye的元素後面的所有兄弟元素。
舉例:
在線測試
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script type="text/javascript" src="../App_js/jquery-1.12.0.min.js"></script>
<script type="text/javascript">
$(function () {
$("#lvye").nextAll(".after").css("color", "red");
})
</script>
</head>
<body>
<ul>
<li>紅色red</li>
<li>橙色orange</li>
<li>黃色yellow</li>
<li id="lvye">綠色green</li>
<li class="after">青色cyan</li>
<li>藍色blue</li>
<li class="after">紫色purple</li>
</ul>
</body>
</html>
在浏覽器預覽效果如下:
分析:
$("#lvye").nextAll(".after")表示選擇id為lvye的元素之前的符合條件(即class為after)的兄弟元素。
nextUntil()方法介於next()方法和nextAll()方法之間。next()方法僅選擇後面相鄰的一個兄弟元素,nextAll()方法選擇後面所有兄弟元素,而nextUntil()方法能夠選擇後面指定范圍的兄弟元素。
語法:
nextUntil(expression)
說明:
參數expression表示jQuery選擇器表達式字符串,用於過濾匹配元素。當參數省略時,則表示查找所選元素的前後面“所有”的兄弟元素;當參數不省略時,則查找所選元素後面“符合條件”的兄弟元素。
舉例:
在線測試
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script type="text/javascript" src="../App_js/jquery-1.12.0.min.js"></script>
<script type="text/javascript">
$(function () {
$("#lvye").nextUntil("#until").css("color", "red");
})
</script>
</head>
<body>
<ul>
<li>紅色red</li>
<li>橙色orange</li>
<li>黃色yellow</li>
<li id="lvye">綠色green</li>
<li>青色cyan</li>
<li>藍色blue</li>
<li id="until">紫色purple</li>
</ul>
</body>
</html>
在浏覽器預覽效果如下:
分析:
$("#lvye").nextUntil("#until")表示以id為lvye的元素為基點,向後找到id為until的同級兄弟元素,然後選擇“這個范圍之間”的兄弟元素。