Easier to read with cream paper, a tint, more contrast or larger text? Choose your colours and text, once, for every page.

Vorschau

Auf Klicks reagieren

Das ist die erste Seite der Lektion. Lies sie und probier die Aufgaben aus. Der Rest steht im ganzen Kurs.

40 Minuten

Die Klingel an der Tür

Eine Klingel tut nichts, bis jemand drückt. Dann klingelt es.

Eine Webseite kann das auch. Bisher lief dein Skript einmal beim Laden. Mit Ereignissen wartet die Seite und reagiert, wenn jemand etwas tut.

Am Ende dieser Lektion

Notiz

Ich kann mit addEventListener eine Funktion starten, wenn jemand auf einen Knopf klickt.

Schlüsselwörter

BegriffWas er bedeutetBeispiel
Ereignisetwas, das auf der Seite passiert, zum Beispiel ein Klickclick
addEventListenersagt einem Element: wenn dieses Ereignis kommt, starte diese Funktionknopf.addEventListener("click", f)
Funktionein Block Code mit einem Namen, den man später ausführt
valueder Text, der gerade in einem Eingabefeld stehtfeld.value
Knopfdas HTML-Element button, auf das man klickt<button>

Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.

Starter: die Seite verändern

Probier es aus

Starter: die Seite verändern

3 Fragen
Probieren Sie es aus: Ihre Antworten werden hier bewertet und danach vergessen. Melden Sie sich an, wenn Ihre Punktzahl gespeichert werden soll und Sie später dort weitermachen möchten, wo Sie aufgehört haben.Anmelden, um die Punktzahl zu behalten

Deine Antworten werden hier bewertet und nicht gespeichert. Mit einem Konto bleiben deine Ergebnisse erhalten.

Eine Funktion kann man weitergeben

Für Ereignisse brauchst du eine neue Idee. Eine Funktion ist wie ein Wert: Du kannst sie weitergeben.

Achte auf den Unterschied. sagHallo() mit Klammern ruft die Funktion jetzt auf. sagHallo ohne Klammern gibt sie nur weiter.

Probiere es aus: eine Funktion weitergeben

Code: node
// Eine Funktion kann man weitergeben wie einen Wert.
function sagHallo() {
  console.log('Hallo aus der Funktion!');
}

function dreimal(aktion) {
  aktion();
  aktion();
  aktion();
}

// Ohne Klammern: Wir geben die Funktion weiter, rufen sie aber noch nicht auf.
dreimal(sagHallo);

Auf einen Klick reagieren

Du suchst den Knopf. Dann sagst du ihm zwei Dinge: auf welches Ereignis er wartet und welche Funktion laufen soll.

knopf.addEventListener("click", function () { ... });

In die geschweiften Klammern kommt, was bei jedem Klick passieren soll.

Probiere es aus: ein Zähler

Code: web
<h1>Verkaufte Brezeln</h1>
<p id="anzahl"></p>
<button id="plus">Noch eine</button>

Ein häufiger Fehler

Warnung

Viele schreiben knopf.addEventListener("click", zeigeAnzahl()) mit Klammern. Dann läuft die Funktion sofort, nicht beim Klick. Ohne Klammern gibst du die Funktion nur weiter. Schreibe sie also ohne Klammern oder in function () { ... }.

Die Lektion geht weiter

7 weitere Teile dieser Lektion stehen im ganzen Kurs, mit den Aufgaben und der Abschlussprüfung. Mit einem Konto bekommst du alles.