我查了整個jQuery文檔,但我沒有找到任何東西: 是有可能在當前的元素之前搜索一個具有特定類的元素? 我認爲這會工作,但不會:如何避免.prev()。prev()。prev()或如何查找當前一個類的項目
$(this).prev('.bar');
我查了整個jQuery文檔,但我沒有找到任何東西: 是有可能在當前的元素之前搜索一個具有特定類的元素? 我認爲這會工作,但不會:如何避免.prev()。prev()。prev()或如何查找當前一個類的項目
$(this).prev('.bar');
嘗試:
$('.d').prevAll('.a').css('color','red');
爲了滿足一月的時候,你可以這樣做:
$('.d').prevAll('.a').first().css('color','red');
使用.prevAll():
$(this).prevAll('.bar');// all elements
$(this).prevAll('.bar').eq(0); //first element
$(this).prevAll('.bar:last'); //last element
如果有多個'.bar',該怎麼辦?只有最後一個應該被選中,不是嗎? –
@JanDvorak更新回答,好的一點 –
試試這個
$('.d').prevAll('.a').first().css('color','red');
.prevAll()
- 將選擇所有以前的元素與class a
.first()
- 將確保只有第一個元素列表被選中。
.prevUntil
應該工作,
$('.d').prevUntil('.a').last().prev().css('color','red');
如果有多個'.a's?只有最後一個應該被選中,不是嗎? –
@JanDvorak:足夠公平,我在那裏扔了一個'.first()'。有趣的是,'.first()'不會選擇第一個反向工作的元素,而不是第一個元素,因爲它會出現在HTML中。 –