jquery可以遍歷節點的方法有:1、children(),可傳回所有直接子元素;2、next(),可傳回被選元素的後一個同級元素;3、nextAll() ,可傳回被選元素之後的所有同級元素;4、prev();5、siblings()等等。
本教學操作環境:windows7系統、jquery1.10.2版本、Dell G3電腦。
1、children()方法:$('p').children()---遍歷查找p元素的所有子元素節點
<p>Hello</p> <div> <span>Hello Again</span> <p class="box">您好!</p> </div> <p>And Again</p> <script type="text/javascript"> $('div').children(); //<span>Hello Again</span><p class="box">您好!</p> $('div').children('.box') //<p class="box">您好!</p> </script>
2、next()方法:$('p').next() --- 尋找p元素後相鄰的同級元素但非所有同級元素
[相關方法]
(1)nextAll()方法:$('p').nextAll() ---- 查找p之後的所有同級元素
(2)nextUntil()方法:$('p').nextUntil('p')----找出p之後直到p元素的所有同級元素
<p>Hello</p> <p class="box">Hello Again</p> <div> <span>And Again</span> </div> <script type="text/javascript"> $('p').next(); //<p>Hello Again</p><div><span>And Again</span></div> $('p').next('.box'); //<p class="box">Hello Again</p> </script>
3、prev()方法:$('p').prev() ---- 尋找p之前相鄰的同級元素
[相關方法有]
(1)prevAll()方法:$('p').prevAll() ---- 查找p之前的所有同級元素
(2)prevUntil()方法:$ ('p').prevUntil('p') --- 查找p之前直到p元素的所有元素
<p>Hello</p> <div> <span>Hello Again</span> </div> <p>And Again</p> <script type="text/javascript"> $('p').prev(); //<div><span>Hello Again</span></div> </script>
4、siblings()方法:$('p').siblings()-- -- 找出p前後所有同級的元素
5、ind()方法:$('p').find('span') ---- 找出p元素內子元素且是span元素
6、eq()方法:$('p').eq(1) --- 找出第二個p元素(索引下標從0開始)
7、first( )方法:$('li').first() --- 取得第一個li元素
8、last()方法:$('li').last() --- 取得最後一個li元素
9、filter()方法:$('p').filter('.box') --- 取得類別名為box的p元素
#10、is ()方法:$('.box').is('p') ---- 判斷.box是否為p元素
11、map()方法:$('p').map (callback) --- 將每個p執行callback函數
例:遍歷input元素取得其value值以“,”分隔加到p元素內後面
<p><b>Values: </b></p> <form> <input type="text" name="name" value="John"/> <input type="text" name="password" value="password"/> <input type="text" name="url" value="http://ejohn.org/"/> </form> <script type="text/javascript"> $("p").append( $("input").map(function(){ return $(this).val(); }).get().join(", ") ); //<p>John, password, http://ejohn.org/</p> </script>
12、hasClass( )方法:$('p').hasClass('box') ---- 找出含有類別名稱為box的p
13、has()方法:$('p').has( 'span') ---- 找出含包有span元素的p元素
14、not()方法:$('p').not('span') ---- 查找不包含有span元素的p元素
15、slice()方法:$('p').slice(0,2) ---- 找出第1個p元素到第3個p元素
16、offsetParent()方法:$('p').offsetParent() --- 找出p元素的第一個被定位的祖先元素
#17、parent()方法:$ ('p').parent() ---- 傳回包含p元素的唯一父節點的元素集合
18、parents()方法:$('p').parent() --- - 傳回包含p元素的所有祖先節點(不包括根節點)
19、parentUntil()方法:$('p').parentUntil('#box') ---- 找出p元素的祖先級元素直到#box為止
20、contents()方法:$('p').contents() --- 傳回p元素內的所有子節點(包括文字節點)
21、end()方法:$('p').find('span').end() ---- 將語句的主體變回前一次狀態即:查找到span元素之後焦點回到p元素
<div> <span>Hello</span>, how are you? </div> <script type="text/javascript"> $('div').find('span').addClass('test').end().attr('title','title1'); //span添加class=test;div添加title=title1 </script>
【推薦學習:jQuery影片教學、web前端】
以上是jquery裡有哪些方法可以遍歷節點的詳細內容。更多資訊請關注PHP中文網其他相關文章!