Aufgabe 20 - Klickzähler und Ampel
Aufgabe 20 - Klickzähler und Ampel
Abschnitt betitelt „Aufgabe 20 - Klickzähler und Ampel“Worum geht es?
Abschnitt betitelt „Worum geht es?“Ihre Programme bekommen eine Oberfläche: Sie reagieren auf Klicks und verändern die Seite aus JavaScript heraus (siehe Kapitel DOM und Events).
In dieser Übung üben Sie:
- Finden: Elemente mit
querySelectoransprechen. - Reagieren: Klick-Events mit
addEventListenerbehandeln. - Verändern: Texte und Styles aus JavaScript setzen.
Benötigte Unterlagen
Abschnitt betitelt „Benötigte Unterlagen“- VS Code, Browser; ein Projekt mit
index.html,style.css,script.js.
Arbeitsaufträge
Abschnitt betitelt „Arbeitsaufträge“Teil A - Klickzähler
Abschnitt betitelt „Teil A - Klickzähler“- Die Seite zeigt eine große Zahl (Start: 0) und drei Buttons:
+1,-1,Reset. - Implementieren Sie die drei Buttons. Der Zähler darf nie unter 0 fallen.
- Ab 10 wird die Zahl grün, ab 20 zusätzlich fett. Setzen Sie dazu CSS-Klassen aus JavaScript (
classList).
Teil B - Fußgängerampel
Abschnitt betitelt „Teil B - Fußgängerampel“- Bauen Sie eine Ampel aus drei runden
divs (rot, gelb, grün). Die Gestaltung liegt instyle.css, aktiv und inaktiv werden über CSS-Klassen geschaltet. - Ein Button
Weiterschaltet in die nächste Phase: Rot, Rot-Gelb, Grün, Gelb, wieder Rot. - Merken Sie sich die aktuelle Phase in einer Variable und implementieren Sie die Schaltlogik in einer eigenen Funktion
naechstePhase(). - Zusatz: Ein zweiter Button
Automatikschaltet alle 2 Sekunden weiter (setIntervalauf MDN nachschlagen); ein erneuter Klick stoppt.
Teil C - Sauber trennen
Abschnitt betitelt „Teil C - Sauber trennen“Kontrollieren Sie zum Schluss: In index.html steht kein JavaScript und kein style-Attribut; die Logik (Phasen-Schaltung) ist von der Darstellung (Klassen setzen) getrennt. Notieren Sie als Kommentar, welche Funktion was verantwortet.
Projektordner. Beide Anwendungen müssen ohne Konsolenfehler laufen.