Deus Figendi: Javaskript-Funktion per Kopfdruck ausführen / ausblenden

Beitrag lesen

Naja kurze Antwort: Es geht nicht!
Du musst schon explizit mitschreiben dass oder ggf. sogar was function a gemacht hat, damit du es zurück nehmen kannst. Wenn function a gar DOM-Objekte löscht o.ä. wirst du sie neu erstellen müssen (bzw. in function a eine Sicherheits-Kopie außerhalb des Elementenbaums anlegen).
Du wirst also wahrscheinlich einfach eine function b schreiben müssen, die die Schritte von function a rückwärts und negiert ausführt.

Beispiel:
Macht function a() {
 Verdopple Breite von Element mit ID "foo";
}
muss function b() {
 Halbiere Breite von Element mit ID "foo";
}

nun angenommen
function a ( foo ) {
 Verdopple Breite von Element mit ID $foo;
 logge: funktion a auf $foo ausgeführt;
}

function b () {
 lese aus log worauf funktion a zuletzt ausgeführt wurde in $bar
 Halbiere Breite von Element mit ID $bar;
 entferne letzten Eintrag aus log;
}

und das können wir unendlich kompliziert stricken, bis zu dem Punkt wo du dich entscheidest wie oben geschrieben einfach eine Sicherheitskopie der veränderten Dinge anzulegen um dann leicht daraus eine "rückgängig"-Funktion zu entwerfen.
Weil es einfacher wird ein ganzes Element (bzw. Teilbaum) oder Objekt oder was auch immer zu speichern als alle Veränderungen, die man daran durchgeführt hat.

--
sh:( fo:| ch:? rl:( br:& n4:& ie:{ mo:} va:) de:µ_de:] zu:) fl:( ss:| ls:[ js:(