JavaScript Grundkurs

Anonyme Ereignisreaktion

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
Mit anonymen Funktionen können Sie die Ereignisbehandlung flexibilisieren. Sie weisen einem Eventhandler eine anonyme Funktion zu und können im Inneren auch Funktionsaufrufe mit Parametern notieren.
03:07

Transkript

Beim Eventhandling mit Javascript arbeitet man sehr gern mit anonymen Funktionen. Ich möchte Ihnen jetzt zeigen warum man das macht und wie. Ich habe jetzt drei Bilder der Webseite,die unterschiedliche Informationen anzeigen, je nachdem wo sich der Mauszeiger drüber bewegt, wenn Sie mit Funktionsreferenzen arbeiten, die auf eine Funktion zeigen, haben Sie hier keine Klammern und dementsprechend können Sie da keinen Parameter angeben, um beispielsweise so eine Steuerung vorzunehmen. Sie müssten die Logik aus dem Inneren heraus irgendwie steuern, entweder indem Sie das Objekt auswerten, dass das Ereignis ausgelöst hat, oder etwas ähnliches. Einfacher ist es mit anonymen Funktion zu arbeiten, das heißt ich schreibe hier als Wert für ein JavaScript Eventhandler eine anonyme Funktionen hin, Function ohne Namen, Klammer auf Klammer zu, geschweifte Klammer auf geschweifte Klammer zu und dann kann ich im inneren Funktionsaufrufe notieren und hier kann ich Parameter übergeben. Ich habe ja Klammern. Die Funktion anzeigen besitzt jetzt einen Parameter i mit einer Switch Case werte ich aus welchen Wert dieser Parameter hat und dann kann ich hier unterschiedlich reagieren, um es noch einmal deutlich zu machen, eine anonyme Funktion können Sie überall dahin schreiben, wo Sie eine Funktionsreferenz haben. Die Rückgabe einer anonymen Funktion ist eine Funktionsreferenz, aber im Inneren können Sie, da Sie hier einen Funktionskörper haben, Funktionaufrufe notieren. Diese Aufrufe werden nicht beim Laden der Webseite ausgeführt, sondern eben genau dann, wenn dieses spezifizierte Ereignis auftritt. Ich binde hier über die Withanweisung wieder für eine verkürzte Schreibweise an document.getElemetsByTagName die verschiedenen Events und zwar je nach Index, eine unterschiedliche anonyme Funktion mit entsprechenden unterschiedlichen Parametern beim internen Aufruf der Funktion anzeigen. Und hier sehen Sie, dass ich die for i in Strukturen nehme, um an alle Bildelemente beim Verlassen des Bildes eine Funktionreferenz auf die Funktion leeren zu binden. Hier habe ich ja keinerlei Unterschied zu erwarten und dort brauche ich dann auch keine Parameter. Das bedeutet bei allen Bildern wird die Funktion leeren aufgerufen, sobald der Mauszeiger den Bereich verlässt. Ich warne trotzdem davor mit solchen Schleifen zu arbeiten, wenn Sie Ereignisreaktionen programmieren wollen. Es ist nicht ganz untückich. Sie sollten bei einer spezifischen Reaktion immer das Element in Schreiben und dann gezielt eine Ereignisreaktion. Um es als Fazit festzuhalten, Sie haben jetzt ein Argument gesehen, warum Sie mit anonymen Funktion eine höhere Flexibilität haben, weil Sie dann mehrere Schritte ausführen können. Das ist das eine Argument und vor allen Dingen, Sie können im Inneren auch mit Parametern Funktionaufrufe notieren und dadurch eine große Modularisierung erreichen.

JavaScript Grundkurs

Lernen Sie die Möglichkeiten der universellen Sprache JavaScript kennen und machen Sie sich mit der Syntax vertraut, um Ihre Web-Applikationen durch effektive Skripts zu ergänzen.

8 Std. 20 min (134 Videos)
Derzeit sind keine Feedbacks vorhanden...

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!