2012-02-07 79 views
0

我正在使用此小提琴上显示的jQuery和HTML,并且我无法手动触发单个选项卡。如何手动触发jQuery togglePanels

http://jsfiddle.net/DkHyd/

$("h3").toggleClass("ui-accordion-header-active ui-state-active ui-state-default ui-corner-bottom").find(".ui-icon").toggleClass("ui-icon-triangle-1-e ui-icon-triangle-1-s").end().next().slideToggle(); 

以上jQuery将切换所有的元素,但如果我以这种方式提及某个人。 $(“#ToggleHeader”)等 将无法​​正常工作。

我想要一些帮助,并希望解释为什么这不适合我。

回答

1

您尝试的解决方案不起作用,因为选择器$("h3")与页面上的每个h3相匹配,因此以下操作将应用于所有这些解决方案。您尝试的第二种解决方案无效,因为您的html代码中的h3元素没有任何ID。

添加ID到每个元素,然后使用id选择$("#ToggleHeader")

<h3 id="ToggleHeader"><a href="#">Section 1</a></h3> 

等选择标题..

+0

对不起,我应该已经更加清晰;在每一个H3我有一个ID,我想通过ID触发切换。因此,例如: $(“#Receive”)。etc 我宁愿不必使用索引,因为我也使用jQuery cookie来选择哪些面板在页面加载时保持打开状态。 – erbaker 2012-02-07 01:51:40

+0

尽管在jsfiddle示例中没有标识符,但您是否忘记将它们添加到h3元素中? – ggreiner 2012-02-07 01:54:44

+0

我想留下记录,并说我确实有正确的想法,但由于一些愚蠢的原因,我的身份证中有空位,所以当然不起作用。 我不知所措,但谢谢你的回答:)我会给你信贷。 – erbaker 2012-02-07 02:16:19