2010-06-12 19 views

cevap

13

Evet, sadece ara activate:

1 Açmak istediğiniz endeksidir
$("#myaccordion").accordion("activate", 1); 

.

Sen arayarak aktif panelinin geçerli sıfır tabanlı dizini alabilirsiniz:

$("#mybutton").click(function(e){ 
    e.preventDefault(); 
    var acc = $("#myaccordion"), 
     index = acc.accordion('option','active'), 
     total = acc.children('div').length, 
     nxt = index + 1; 

    if (nxt >= total) { 
    nxt = 0; // Loop around to the first item 
    } 

    acc.accordion('activate', nxt); 
}) 
: biz bir tıklama sonraki öğeyi açabilir, Yani

var index = $("#myaccordion").accordion('option','active'); 

birlikte hem bu öğeleri alarak

10

JQuery UI 1.10 veya daha yüksek sürümlerinde .activate işlevi, 'option' (yöntem) yönteminin kullanılmasından yana, önceki yanıtı kullanan alternatif bir yaklaşımdan dolayı kullanımdan kaldırılmıştır:

$("#button").click(function(){ 
    var index = $("#accordion").accordion('option','active'); 
    var total = $("#accordion").children('div').length; 
    index++; 

    // include restart same as previous answer  
    if (index >= total) { 
     index = 0; 
    } 

    $("#accordion").accordion("option", "active", index); 

}