[英]Select closest element of certain type - JQuery
我想使用一些選擇器選擇一個元素,然后選擇最接近它的<p>
元素(請注意,p不與前一個元素嵌套)。 我該怎么做? 我嘗試過closest()
,但這僅在元素嵌套的情況下有效。
編輯:最接近的定義:
<a id="myelement"></a>
<p id="1"></p>
<p id="2"></p>
在這種情況下,假設#myelement
是所討論的元素,則將選擇p#1
。
您可以使用.siblings()
或.next()
,但我相信,如果您的數據始終采用您發布的形式, .next
將是更好的選擇。
這是一個例子:
的HTML
<a id="myelement">a</a>
<p id="1">1</p>
<p id="2">2</p>
jQuery的
$("#myelement").click(function(){
console.log($(this).next("p").attr("id"));
console.log($(this).siblings("p")[0].id);
});
您將看到上述控制台日志報告和ID均為1
。
http://jsfiddle.net/gpinto/PTFgG/1/
function findFirstParagraph() {
var siblings = $('#myElement').siblings();
siblings.each(function(index) {
if ( $(this).attr('id') == 1) {
$(this).css('background-color', 'red');
}
});
}
嘗試使用next()
http://api.jquery.com/next/
根據最新的OP編輯:jsfiddle.net/KXPwx/9
您嘗試了.next()或.prev()。也許使用.eq(0)?
您還可以使用.parent()或.parents('。selector')
嘗試.find()
有很多函數可以做類似的事情,但是對我來說,使用$(this).find( 'selector here' )
或$(' id or class selector here').find('id/class here')
可以解決問題大聲笑。
祝好運
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.