gpt4 book ai didi

jquery嵌套 Accordion 问题

转载 作者:行者123 更新时间:2023-12-01 08:26:39 24 4
gpt4 key购买 nike

在 stackoverflow 上提出的第一个问题。所以,问题是:document.ready 上的两个 Accordion 声明(jquery 1.4.2 和 jquery ui 1.8.2):

       $(document).ready(function () {
$("#accordion").accordion({
header: 'h3'
});

$("#accordion2").accordion({
header: 'h4'
});

$(function () {
$(".get-index").click(function () {
var activecontent = $("#accordion").accordion("option", "active");
alert(activecontent);
});
});
});

HTML:

<div id="accordion">
<h3><a href="#">Section 1</a></h3>
<div>
Content Section 1: Parent
<div id="accordion2">
<h4><a href="#">SubSection 1</a></h4>
<div>content section 1: child</div>
<h4><a href="#">SubSection 2</a></h4>
<div>content section 2: child</div>
<h4><a href="#">SubSection 3</a></h4>
<div>content section 3: child</div>
<h4><a href="#">SubSection 4</a></h4>
<div>content section 4: child</div>
</div>
</div>
<h3><a href="#">Section 2</a></h3>
<div>
Content Section 2: Parent
</div>
<h3><a href="#">Section 3</a></h3>
<div>
Content Section 3: Parent
</div>
<h3><a href="#">Section 4</a></h3>
<div>
Content Section 4: Parent

<button type="button" class="get-index ui-button ui-button-text-only ui-widget ui-state-default ui-corner-all">
<span class="ui-button-text">index</span>
</button>

</div>
</div>

最后:出了什么问题以及为什么“activecontent”是 7?我知道,有 4 个父面板 + 4 个子面板,从 0 开始,它是 7。但是我试图获取最后一个父面板的索引,它应该是 3。

非常感谢任何帮助。

发布代码:http://jsbin.com/eqewe

最佳答案

不幸的是,这是 jQuery UI 中的一个错误,in the accordion code :

o.active = o.collapsible && clickedIsActive ? false 
: $('.ui-accordion-header', this.element).index(clicked);

它正在查找任何 $('.ui-accordion-header'),而不仅仅是您指定的 header 选择器,也不仅仅是直接子级。 我会将其作为 jQuery UI 人员的错误,.active 属性确实应该进行不同的设置。我已为此向 jQuery UI 团队输入了一个错误:http://dev.jqueryui.com/ticket/5841

<小时/>

您现在可以通过使用 .index() 自行查找元素来解决此问题。 ,像这样:

$(function () {
$(".get-index").click(function () {
var a= $("#accordion").children('.ui-state-active').index('#accordion > h3');
alert(a);
});
});​

You can try it out here

关于jquery嵌套 Accordion 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3293413/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com