jQuery遍歷之prev()方法
jQuery是一個(gè)合集對(duì)象,如果想快速找出指定元素集合中每一個(gè)元素緊鄰的前面同儕元素的元素集合,此時(shí)可以用prev()方法
理解節(jié)點(diǎn)查找關(guān)係:
如下藍(lán)色的class="item-2"的li元素,紅色的節(jié)點(diǎn)就是它的prev兄弟節(jié)點(diǎn)
<ul class="level-3">
????<li class="item-1">1</li>
? ? <li class="item-2">2</li>
? ? <li class="item-li>2</li>
? ? <li class="item- 3">3</li>
</ul>
注意:jQuery是一個(gè)合集對(duì)象,所以透過(guò)prev是匹配合集中每個(gè)元素的上一個(gè)兄弟元素
同樣的也是因?yàn)閖Query是合集對(duì)象,可能需要對(duì)這個(gè)合集對(duì)象進(jìn)行一定的篩選,找出目標(biāo)元素,所以允許傳一個(gè)選擇器的表達(dá)式
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-type" content="text/html; charset=utf-8" /> <title></title> <style> .left { width: auto; height: 150px; } .left div { width: 150px; height: 100px; 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>prev方法()</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>點(diǎn)擊:prev無(wú)參數(shù)</button> <button>點(diǎn)擊:prev傳遞選擇器</button> <script type="text/javascript"> $("button:first").click(function() { $('.item-2').prev().css('border', '1px solid red'); }) </script> <script type="text/javascript"> $("button:last").click(function() { //找到所有class=item-2的li //然后篩選出最后一個(gè),加上藍(lán)色的邊 $('.item-3').prev(':last').css('border', '1px solid blue'); }) </script> </body> </html>prev()中新增選擇器, 是在這些緊鄰的上一個(gè)元素集合中做出進(jìn)一步篩選, 例如: eq(1), first, last, :contains("3") , has('p'),加入符合你需求的選擇器來(lái)篩選, 這和next()是一樣的,只是二者的功能不一樣###