如果我有以下内容:
<div id="wrapper">
<h3>Title</h3><!-- I want to select this -->
<a name="anchor-name"></a>
<div class="section">
<h4>Sub section</h4>
<a name="subsection-name"></a> <!-- this is selected -->
<div class="subsection"></div>
</div>
<h3>Title</h3>
<a name="anchor-name"> </a>
<div class="section">
<h4>Sub section</h4>
<a name="subsection-name"></a>
<div class="subsection"></div>
</div>
<h3>Title</h3>
<a name="anchor-name"></a>
<div class="section">
<h4>Sub section</h4>
<a name="subsection-name"></a>
<div class="subsection"></div>
</div>
</div>
我选择了锚点(如图所示)如何访问<h3>Title</h3>
?我想得到最近的“父母h3”......
答案 0 :(得分:4)
在我们继续前进之前,值得注意的是h3
不是 a
元素的父级。但是,以下应选择h4
,假设HTML结构一致:
$(this).closest('div.section').prevAll('h3:first');
顺便提一下,如果HTML的这个片段包含在另一个元素中,则给出:
<div class="contentWrapper">
<h3>Title</h3>
<a name="anchor-name"></a>
<div class="section">
<h4>Sub section</h4>
<a name="subsection-name"></a> // this is selected
<!-- ...other stuff... -->
</div>
然后它最容易使用:
$(this).closest('.contentWrapper').find('h3');
参考文献:
答案 1 :(得分:1)
h3不是父级,它是父对象中的子级,是什么“包含”h3?
想象一下,它是另一个div,ID为主持人......并且所选的a是$(this):
$ h3 = $(this).parent(“#mainholder”)。children(“h3”)
答案 2 :(得分:-1)
使用jQuery closest()
函数;
$("a[name=subsection-name]").closest("h3");