Javascript 如何在jQuery UI accordion中找到包含特定元素的accordion选项卡的索引?
我有一个手风琴(档案)的链接/日期。当用户单击一个时,我正试图将手风琴展开到当前选定的链接。为此,我在accordion中搜索与当前URL匹配的链接,然后将accordion扩展到该链接 HTMLJavascript 如何在jQuery UI accordion中找到包含特定元素的accordion选项卡的索引?,javascript,jquery,jquery-ui,accordion,Javascript,Jquery,Jquery Ui,Accordion,我有一个手风琴(档案)的链接/日期。当用户单击一个时,我正试图将手风琴展开到当前选定的链接。为此,我在accordion中搜索与当前URL匹配的链接,然后将accordion扩展到该链接 HTML <div class="desktop"> <div id="blog-archive-accordion"> <h3 id="archive" class="title">Archive</h3> <di
<div class="desktop">
<div id="blog-archive-accordion">
<h3 id="archive" class="title">Archive</h3>
<div id="blog-archive-accordion-year">
<h4>2016</h4>
<ul>
<li class="month">November (0)</li>
<li class="month"><a class="" href="/website/archive?filter[year]=2016&filter[month]=10">October</a> (5)</li>
<li class="month"><a class="" href="/website/archive?filter[year]=2016&filter[month]=9">September</a> (11)</li>
<li class="month"><a class="" href="/website/archive?filter[year]=2016&filter[month]=8">August</a> (8)</li>
....
</ul>
<h4>2015</h4>
<ul>
<li class="month">November (0)</li>
<li class="month"><a class="" href="/website/archive?filter[year]=2016&filter[month]=10">October</a> (5)</li>
<li class="month"><a class="" href="/website/archive?filter[year]=2016&filter[month]=9">September</a> (11)</li>
<li class="month"><a class="current-archive-link" href="/website/archive?filter[year]=2016&filter[month]=8">August</a> (8)</li>
<li class="month"><a class="" href="/website/archive?filter[year]=2016&filter[month]=7">July</a> (9)</li>
....
</ul>
<h4>2014</h4>
<ul>
<li class="month">November (0)</li>
<li class="month"><a class="" href="/website/archive?filter[year]=2016&filter[month]=10">October</a> (5)</li>
<li class="month"><a class="" href="/website/archive?filter[year]=2016&filter[month]=9">September</a> (11)</li>
....
</ul>
</div>
</div>
</div>
在上面的例子中,我使用.accordion('option','active',1)强制accordio操作但是我想知道如何找到找到的链接的索引。考虑到手风琴中的索引是基于标题标签,而不是手风琴中的实际索引
即:
将在两个
标记上使用accordion,第二个标记的索引为3而不是此.accordion()
函数所需的1。您可能正在查找此。只需将此函数添加到您的手风琴函数调用中,它将为您提供h4标记的索引。希望这有帮助
activate: function(evt, widget ) {
var index = $(this).find("h4").index(widget.newHeader[0]);
}
$("#blog-archive-accordion-year").accordion({
header: "h4",
activate: function(evt, widget ) {
var index = $(this).find("h4").index(widget.newHeader[0]);
}
});
您可以使用index
函数获取父元素中当前元素的索引/位置(也可以基于标记名使用)
检查示例:
<h4></h4>
<ul></ul>
<div></div>
<h4></h4>
<div></div>
activate: function(evt, widget ) {
var index = $(this).find("h4").index(widget.newHeader[0]);
}
$("#blog-archive-accordion-year").accordion({
header: "h4",
activate: function(evt, widget ) {
var index = $(this).find("h4").index(widget.newHeader[0]);
}
});
selectedArchiveLink.parent().index('ul')