今天看到原來寫的代碼~突然想到 children(":eq(2)")和children().eq(2)是不是一樣~結合自己動手~發現確實是一樣的,感覺自己好垃圾順便記下來.積累一下
html結構如下
<div class="div"> <ul> <li><span>hello</span>1</li> <li><span>hello</span>2</li> <li><span>hello</span>3</li> <li><span>hello</span>4</li> <li><span>hello</span>5</li> </ul> <ul> <li><span>hello</span>11</li> <li><span>hello</span>22</li> <li><span>hello</span>33</li> <li><span>hello</span>44</li> <li><span>hello</span>55</li> </ul> <ul> <li><span>hello</span>111</li> <li><span>hello</span>222</li> <li><span>hello</span>333</li> <li><span>hello</span>444</li> <li><span>hello</span>555</li> </ul> <ul> <li><span>hello</span>1111</li> <li><span>hello</span>2222</li> <li><span>hello</span>3333</li> <li><span>hello</span>4444</li> <li><span>hello</span>5555</li> </ul> </div>
然后引入jquery,比較兩者的區別(實際也沒啥區別,就是書寫方式不一樣)
代碼如下
$('ul').children(":eq(1)").css('color' , 'red');
$('ul').children().eq(2).css('color' , 'red');

改成其他的也沒啥區別
還有就是children()與find()的區別~試驗后發現,find()的括號里必須寫上東西~否則無效
$('div').find().eq(2).css('color' , 'red');

下面是有效的
$('div').find('ul').eq(2).css('color' , 'red');

總結下來就是:find()查找的是后代,子代,子子代,而且參數必須填寫
children()本身查找的就是子代,里面的參數選填
