2012-02-07 36 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