2012-04-05 8 views
5

Stworzyłem menu akordeon za pomocą następującego kodujQuery Accordion jak otworzyć określonego nagłówka przy użyciu skryptu

<h3>Level 1</h3> 
    <div>Content</div> 
<h3>Level 2</h3> 
    <div>Content</div> 
<h3>Level 3</h3> 
    <div>Content</div> 

chcę otworzyć różne nagłówki poziomu przy użyciu kodu. Próbowałem zaglądać do kodu akordeonu i widżetów, ale nie mogłem znaleźć dla tego żadnej funkcji.

Proszę mi pomóc, jaki kod powinien zostać użyty do otwarcia konkretnego nagłówka. Również dowiedzieć się, czy głowa, która powinna się otworzyć, jest już otwarta, czy nie.

Próbowałem też za pomocą

$("#rightMenuAccordion").activate('activate',1) 

wymienione here ale mówi, że nie istnieje

Jest to kod używam do tworzenia akordeon

<div id="rightMenuAccordion" 
    style="position:absolute;width:100%;height:100%;left:0px;top:0px;"></div> 

$("#rightMenuAccordion"). 
    accordion({autoHeight: false, navigation: true, collapsible: false}); 
+0

Proszę zaksięguj odpowiedź jako osobną odpowiedź. Nie edytuj postu. Proszę również rozwinąć odpowiedź, nie używać pojedynczej linii kodu, podać jakiś kontekst. Edytowałem odpowiedź, ale możesz [zobaczyć historię dla odniesienia] (http://stackoverflow.com/revisions/10024447/1). – casperOne

+0

proszę dodać jsfiddle [www.jsfiddle.net], to jest właściwy sposób debugowania problemu – sakhunzai

Odpowiedz

3

use aktywować() FUNCTION

patrz kompletne example

UWAGA: activate() metoda działa tylko "składany: true"

$("#rightMenuAccordion"). 
    accordion({autoHeight: false, navigation: true, collapsible: true}); 

//by index 
$("#rightMenuAccordion").accordion("option", "active", 2); 

//OR header 
$("h3:last").accordion("activate",true); 
0

Inicjalizować akordeonie i przekazać aktywny indeks nagłówka zostać otwarty

//setter for making the header be open on page load with active index value 
$(".selector").accordion("option","active",activeIndex); 

Uwaga: activeIndex powyżej powinna być liczbą całkowitą, a nie łańcuchem. Pierwszy nagłówek rozpoczyna się od wartości indeksu 0.

+0

Mała uwaga, jeśli akordeon ma tylko jedną opcję (tj. 1 indeks), wciąż trzeba ustawić aktywny indeks = 0 lub nic stanie się. –

+0

@ DominicWoodman jesteś pewien? .. nawet jeśli nie chcesz, aby nagłówek pojedynczej opcji był aktywny, będzie on domyślnie otwarty. Nie musisz określać opcji jawnie..just $ ('selector'). Accordion(); zrobi ... – Lucky

0

var indexOfHeaderToBeOpened = 0;

$ ("# akordeon"). Akordeon ("aktywuj", indexOfHeaderToBeOpened);

Powiązane problemy