如何检测上述未知级别的父级?
例如:
<div id="parent-a">
<....>
<....>
<div class="the-child" /> <!-- Comment 1 -->
</....>
</....>
</div>
<div id="parent-b">
<....>
<div class="the-child" /> <!-- Comment 2 -->
</....>
</div>
<....>
DOMS可能是其中任何未知元素(任意数量)。
然后,如果我从the-child
Comment 1
向上看,我怎么知道它的父母是div#parent-a
?
同样的事情,如果我从the-child
Comment 2
向上看,我怎么知道它的父母是div#parent-b
?
答案 0 :(得分:2)
您可以使用jQuery&#39; parents()
来完成此类任务。
但是你必须至少有一些你想要定位的父元素的标识符,所以,例如,这将有效:
// for version one
var parent = $( '.the_child' ).parents( '#parent-a' );
// for version two
var parent = $( '.the_child' ).parents( '#parent-b' );
在这两种情况下,返回第一个元素,它是the_child
元素的祖先并匹配给定的选择器(如果存在)。
答案 1 :(得分:1)
尝试
if($('.the-child:first').closest('#parent-a').length){
//success
}
但您可能必须将选择器$('.the-child')
限制为点击的子项或特定子项,因为$('.the-child')
将选择类the-child
的所有元素
答案 2 :(得分:0)
使用jQuery parents
http://api.jquery.com/parents/
if($('.the-child').parents('#parent-b').length>0){}