jQuery遍歷之children()方法

jQuery是個合集對象,如果想快速找出合集裡面的第一層子元素,此時可以用children()方法。

這裡要注意:.children(selector) 方法是傳回符合元素集合中每個元素的所有子元素(僅兒子輩,這裡可以理解為就是父親-兒子的關係)

理解節點查找關係:

    <div class="div">
           <ul class="son">
 /li>
           </ul>
    </div>

如上碼:如果為$("div").children(),那麼就代表只能找到div與ul是父子關係,li與div是祖輩關係,因此無法找到。

children()無參數

允許我們透過在DOM樹中對這些元素的直接子元素進行搜索,並且建構一個新的匹配元素的jQuery物件

注意:jQuery是一個合集對象,所以透過children是匹配合集中每一給元素的第一級子元素

children()方法選擇性地接受相同類型選擇器表達式

    $("div").children(".selected")

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

下面我們來寫一段實例:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>childred()</title>
    <script src="http://libs.baidu.com/jquery/1.9.1/jquery.js"></script>
</head>
<body>
    <div>
        <ul>
            <li>php.cn</li>
            <li>php 中文网</li>
        </ul>

        <p>  php </p>
    </div>


    <script>
        $("div").children().css("color", "red");
    </script>
</body>
</html>

如上程式碼,當我們寫上$("div").children().css("color ", "red"); 他就會去找div 下面的子元素,所以div 中的元素都會變成紅色,下面我們來看另外一種

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>childred()</title>
    <script src="http://libs.baidu.com/jquery/1.9.1/jquery.js"></script>
</head>
<body>
    <div>
        <ul>
            <li>php.cn</li>
            <li>php 中文网</li>
        </ul>

        <p>  php </p>
    </div>


    <script>
        $("div").children(':first').css("color", "red");
    </script>
</body>
</html>

如上程式碼,我們會看到p標籤內的元素的顏色沒有變化,因為我們children() 中有一個參數,first 第一個,所以會去找div 中的第一個子元素

可以看出<ul>是我們div 的第一個元素,所以li 標籤內的元素會發生變化,大家可以在本地寫一段程式碼試試

繼續學習
||
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>childred()</title> <script src="http://libs.baidu.com/jquery/1.9.1/jquery.js"></script> </head> <body> <div> <ul> <li>php.cn</li> <li>php 中文网</li> </ul> <p> php </p> </div> <script> $("div").children().css("color", "red"); </script> </body> </html>