JQuery UI: Akkordeon Rückrufe
Muss ich mein javascript nur den callback, wenn ich ÖFFNEN Sie einen Abschnitt auf dem Akkordeon, ab jetzt macht es einen Rückruf, wenn ich öffnen ODER schließen einen Abschnitt, weil ich bin nur mit einem Klick-Funktion. Gibt es eine Möglichkeit, die ich ändern kann meine vorhandenen Klick-Funktion nur ausgeführt, wenn der angegebene Abschnitt ist aktiviert?
Meine aktuellen Klick-Funktion:
$("a#mimetypes").click(function() {
$("span#mimetypesthrobber").loading(true, { max: 1500 })
$.getJSON("../mimetypes", function(data) {
//callback
});
});
Dank!
EDIT:
Ich habe bereits versucht, dies mit einem anderen Teil des Akkordeons und es war nicht richtig funktioniert:
$('.ui-accordion').bind('accordionchange', function(event, ui) {
if (ui.newHeader == "Encoders") {
EncodersGet();
}
});
Du musst angemeldet sein, um einen Kommentar abzugeben.
können Sie die die "change-Ereignis"
und Zugriff auf die "newHeadert" zum Beispiel, und tun Sie Ihre Verarbeitung
BEARBEITEN
entsprechend der neuen info {collapsible: true, active: false}
die "Möglichkeit, aktiv" zurückkehren würden, die Sie den index der offene Abschnitt oder "false" wenn alle Abschnitte sind geschlossen
Einer Verbesserung auf undertakerors Antwort: verwenden triple-gleich beim Vergleich von index auf false, um der ersten Akkordeon-element übereinstimmen.
Bitte beachten Sie, dass Doppel-ist-gleich durchführen-Typ-Umwandlung bei der Auswertung der Bedingungen.
Wenn alle die Akkordeon-Sektionen sind geschlossen von dfault Sie könnte ersetzen Sie das click-Ereignis mit Knebel und haben die zweite Funktion, einfach nichts zu tun.
Die bessere Lösung wäre das hinzufügen einer Klasse zum aktiven Abschnitt und überprüfen Sie, dass die Klasse vor dem Aufruf der load.