nAbend Thorsten.
Interessant, wusste gar nicht, dass man das mit
toggle()
machen kann. Das setze ich durchaus auch ein, aber eben nur zum ein/ausblenden ohne Animation. Im Moment will der Funke aber noch nicht überspringen. Beim 3D Effekt war das anders, das war quasi sofort "gekauft".
Was mir beim Schalten via
toggle('scale')
weniger gefällt; das schaltet Zustands-bedingt einfach um. Das könnte z.B. bei einem Form-Reset, bei dem ja alle Boxen geschlossen werden, bei einem undefinierten Zustand der Boxen dazu führen, dass Boxen plötzlich eingeblendet werden. Bei
hide()
haben wir dagegen eine unbedingte Ausführung, das heisst egal in welchem Zustand die Boxen sind, sie werden auf jeden Fall bei einem Reset ausgeblendet.
Und man kann damit auch direkt einen undefinierten Zustand erzeugen; bei EMP habe ich ja 2 Boxen. Wenn man da
toggle('scale')
nutzt und eine der Boxen öffnet und dann einen Reset auslöst, wird die geöffnete Box zwar geschlossen, aber die andere - bisher geschlossene - geöffnet. Und bei jedem weiteren Reset haben wir quasi eine Flipflop Schaltung, bei der die Zustände der beiden Boxen invertiert werden.
Ansonsten arbeite ich auch mit
toggle()
, allerdings übergebe ich
true/false
und erzwinge so effektiv den gewünschten Zustand. Aber in Kombination mit Animation scheint das nicht zu gehen, zumindest hab ich es noch nicht rausgefunden. Die jQuery Doku zu
toggle()
ist da auch bisserl dürftig in Bezug auf Animationen. Dort ist von
scale
zum Beispiel gar keine Rede.
edit: Dass "scale" funktioniert, ist nur Zufall. Du könntest auch "test" angeben, hätte denselben Effekt. Gültige Werte sind nur "swing" und "linear", aber nur als zweiter Parameter. Also interpretiert jQuery das "scale" irgendwie als Anim-Para und führt eine Animation aus. Nämlich die einzige die per Standard bei jQuery enthalten ist.
Siehe:
https://api.jquery.com/toggle/#toggle-d ... g-complete