jQuery遍歷之next()方法

jQuery是一個合集對象,如果想快速找出指定元素集合中每一個元素緊鄰的後面同儕元素的元素集合,此時可以用next()方法

理解節點尋找關係:

如下class="item-1"元素就是紅色部分,那藍色的class="item-2"就是它的兄弟元素

<ul class="level-3"> ;   

    <li class="item-1">1</li>
   <li class="item-2">2</li>
<li class="item-3">3</li>
</ul>

next()無參數

允許我們找遍元素集合中緊跟著這些元素的直接兄弟元素,並根據匹配的元素創建一個新的jQuery 物件。

注意:jQuery是一個集合對象,所以透過next匹配合集中每個元素的下一個兄弟元素

next()方法選擇性地接受同一型別選擇器表達式

同樣的也是因為jQuery是合集對象,可能需要對這個合集對象進行一定的篩選,找出目標元素,所以允許傳一個選擇器的表達式

下面我們就來寫一段實例程式碼,程式碼如下:

<!DOCTYPE html>
<html>

<head>
    <meta http-equiv="Content-type" content="text/html; charset=utf-8" />
    <title></title>
    <style>
    .left {
        width: auto;
        height: 120px;
    }
    
    .left div {
        width: 150px;
        height: 70px;
        padding: 5px;
        margin: 5px;
        float: left;
        background: #bbffaa;
        border: 1px solid #ccc;
    }
    
    a {
        display: block;
    }
    </style>
    <script src="http://libs.baidu.com/jquery/1.9.1/jquery.js"></script>
</head>

<body>
    <h2>next方法()</h2>
    <div class="left first-div">
        <div class="div">
            <ul class="level-1">
                <li class="item-1">1</li>
                <li class="item-2">2</li>
                <li class="item-3">3</li>
            </ul>
        </div>
        <div class="div">
            <ul class="level-2">
                <li class="item-1">1</li>
                <li class="item-2">2</li>
                <li class="item-3">3</li>
            </ul>
        </div>
        <div class="div">
            <ul class="level-3">
                <li class="item-1">1</li>
                <li class="item-2">2</li>
                <li class="item-3">3</li>
            </ul>
        </div>
    </div>
    <button>点击:next无参数</button>
    <button>点击:next传递表达式</button>
    <script type="text/javascript">
    $("button:first").click(function() {
        $('.item-1').next().css('border', '1px solid red');
    })
    </script>

    <script type="text/javascript">
    $("button:last").click(function() {
        //找到所有class=item-3的li
        //然后筛选出第一个li,加上蓝色的边
       $('.item-2').next(':first').css('border', '1px solid blue');
    })
    </script>

</body>

</html>
繼續學習
||
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-type" content="text/html; charset=utf-8" /> <title></title> <style> .left { width: auto; height: 120px; } .left div { width: 150px; height: 70px; padding: 5px; margin: 5px; float: left; background: #bbffaa; border: 1px solid #ccc; } a { display: block; } </style> <script src="http://libs.baidu.com/jquery/1.9.1/jquery.js"></script> </head> <body> <h2>next方法()</h2> <div class="left first-div"> <div class="div"> <ul class="level-1"> <li class="item-1">1</li> <li class="item-2">2</li> <li class="item-3">3</li> </ul> </div> <div class="div"> <ul class="level-2"> <li class="item-1">1</li> <li class="item-2">2</li> <li class="item-3">3</li> </ul> </div> <div class="div"> <ul class="level-3"> <li class="item-1">1</li> <li class="item-2">2</li> <li class="item-3">3</li> </ul> </div> </div> <button>点击:next无参数</button> <button>点击:next传递表达式</button> <script type="text/javascript"> $("button:first").click(function() { $('.item-1').next().css('border', '1px solid red'); }) </script> <script type="text/javascript"> $("button:last").click(function() { //找到所有class=item-3的li //然后筛选出第一个li,加上蓝色的边 $('.item-2').next(':first').css('border', '1px solid blue'); }) </script> </body> </html>