Récupérer l'index pour accordion
Bonjour,
J'ai un accordéon à niveau multiple contenant des formulaires et j'aimerais modifier la valeur du show pour pouvoir accéder au bon panel directement après rafraîchissement de la page :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
|
window.addEvent('domready', function() {
// Adaption IE6
if(window.ie6) var heightValue='100%';
else var heightValue='';
// Selectors of the containers for switches and content
var togglerName='div.toggler_';
var contentName='div.accordion_';
// Position selectors
var counter=1;
var toggler=$$(togglerName+counter);
var content=$$(contentName+counter);
while(toggler.length>0)
{
// Apply accordion
new Accordion(toggler, content, {
show: ??,
opacity: false,
alwaysHide: true,
onActive: function(toggler, content) {
content.setProperty('aria-hidden', 'false');
toggler.addClass('active');
toggler.getNext('div').fade('in');
toggler.setProperty('aria-expanded', 'true');
return false;
},
onBackground: function(toggler, content) {
content.setProperty('aria-hidden', 'true');
toggler.removeClass('active');
toggler.getNext('div').fade('out');
toggler.setProperty('aria-expanded', 'false');
return false;
}
});
// Set selectors for next level
counter++;
toggler=$$(togglerName+counter);
content=$$(contentName+counter);
}
}); |
Comment récupérer la valeur de l'index ?
Merci d'avance.
Méthode pour dérouler le composant interne
Voila alors j'ai rajouté ce code juste avant de faire "new Accordion..." :
Code:
1 2 3 4 5 6 7 8
| var index = -1;
for (var i = 0, n = toggler.length; i < n; i++) {
var test=toggler[i].hasClass('open');
if (test) {
index = i;
break;
}
} |
Ainsi que display: index, dans les options de la création de l'accordion.
Alors la div interne se met en statut ouvert mais la div qui la contient ne s'ouvre pas... Ce qui est fortement dérangeant pour mon résultat voulu...
Que faire pour que l'accordion parent s'ouvre également ?
Merci.