Blogseite mit Theme
Teil des Abschnitts JavaScript in Aktion der HTML-Journey von Coddy. Lektion 27 von 27.
Aufgabe
EinfachIn dieser Herausforderung haben wir eine Fotografie-Blogseite namens Lens & Light. Sie enthält Blogbeiträge mit Tipps zur Fotografie, eine Umschalttaste für das dunkle/helle Design und ein einfaches Newsletter-Anmeldeformular, das beim Absenden eine Toast-Nachricht anzeigt.
Das HTML und CSS für diese Fotografie-Blogseite ist bereits vorhanden. Deine Aufgabe ist es, die JavaScript-Funktionalität hinzuzufügen:
- Designwechsel: Füge der Umschalttaste einen Event-Listener hinzu. Wenn auf die Schaltfläche geklickt wird, schalte die Klasse
dark-modeam<body>um, damit sich das Design ändert. - Toast-Nachricht: Wenn das Formular abgesendet wird, mache den Toast sichtbar, indem du die Klasse "hidden" aus dem Toast-Element entfernst und dem Toast-Element die Klasse "show" hinzufügst.
Probier es selbst
<!DOCTYPE html>
<html>
<head>
<title>Photographer's Blog</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<header>
<h1>Lens & Light</h1>
<button id="themeToggle">Toggle Theme</button>
</header>
<main>
<article class="post">
<h2>Capturing Golden Hour</h2>
<p>
The hour before sunset and after sunrise brings warm, soft light that adds
depth and atmosphere to portraits and landscapes. Every photographer should
experiment with golden hour lighting.
</p>
</article>
<article class="post">
<h2>5 Tips for Street Photography</h2>
<p>
Look for interesting shadows, capture candid emotions, blend into the crowd,
use a prime lens, and always be ready to click. Street photography is about
telling raw and authentic stories.
</p>
</article>
<section class="newsletter">
<h3>Subscribe to Photo Notes</h3>
<form id="newsletterForm">
<input type="email" id="email" placeholder="Enter your email">
<button type="submit">Sign Up</button>
</form>
</section>
</main>
<div id="toast" class="toast hidden">Subscribed successfully! 📸</div>
<script src="script.js"></script>
</body>
</html>
Alle Lektionen in JavaScript in Aktion
7Animationen & Effekte
CSS-ÜbergängeElemente beim Scrollen animierenAnimationen beim Klick auf Schaltflächen2Formulare & Validierung
EingabevalidierungBenutzerdefinierte FehlermeldungenSenden-Schaltflächen9Abschlussherausforderungen
Interaktives FAQ-AkkordeonAnmeldeformularResponsive NavigationsleisteBlogseite mit ThemeÜbe selbstständig: Web-Playground