Also ich versuche, durch eine Klasse von Akkordeon jquery Objekte iterieren, prüfen Sie, welche diejenigen offen, zu einem Array diejenigen hinzufügen, dann (nach einem Reset der Akkordeons) die Akkordeons wieder öffnen die waren vorher offen. Das scheint eine wirklich einfache Frage zu sein, und ich entschuldige mich, aber bei meinen Recherchen scheint es so zu sein, als ob die Fragen nur darin bestanden, mit jQuery zu iterieren und nicht über Arrays von jquery-Objekten zu iterieren. Ich konnte wirklich keine Antwort finden.dynamisch eine Reihe von jquery Akkordeons Öffnung
Dies ist, was ich zur Zeit haben, die aus irgendeinem Grund nicht funktioniert. Zuerst wird das Array der bereits geöffneten Akkordeons erstellt.
$(".accordionClass").each(
function(){
if($(this).accordion("option", "active") !== false) {
activeArray.push($(this));
}
}
);
Dies scheint zu funktionieren. Zumindest gibt activeArray.length die korrekte Anzahl von Objekten an.
Dann versuche ich später alle der Akkordeons in diesem Array zu öffnen, nachdem sie neu initialisiert worden ist.
$.each(activeArray,
function(){
$(this).accordion({ active: 0 });
}
);
Und keine Würfel. Sie öffnen sich nicht. Irgendwelche Ideen?
als aktives Array bereits enthält jquery Objekt .. Sie können this.accordian ({active: 0}). aber bessere Lösungen würden, wie vorgeschlagen, das DOM-Objekt in ein Array statt in ein jQuery-Objekt speichern. Ich hoffe, Sie erstellen DOM-Objekte nicht neu? – Ankit