Blog-Seite mit Theme
Teil des Abschnitts JavaScript in Action der HTML-Journey von Coddy — Lektion 27 von 27.
Aufgabe
EinfachIn dieser Herausforderung haben wir eine Fotografie-Blogseite namens Lens & Light. Sie enthält Blog-Posts über Fotografie-Tipps, eine Schaltfläche zum Umschalten zwischen dunklem und hellem Design und ein einfaches Newsletter-Anmeldeformular, das beim Absenden eine Toast-Nachricht anzeigt.
Wir haben das HTML und CSS für diese Fotografie-Blogseite bereits vorbereitet. Deine Aufgabe ist es, die JavaScript-Funktionalität hinzuzufügen:
- Design-Umschalter – Füge der Umschaltfläche einen Event-Listener hinzu. Wenn die Schaltfläche angeklickt wird, schalte die Klasse
dark-modeauf dem<body>um, damit sich das Design ändert. - Toast-Nachricht – Wenn das Formular abgesendet wird, mache den Toast sichtbar, indem du die Klasse "hidden" vom Toast-Element entfernst und die Klasse "show" zum Toast-Element 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 Action
9Abschluss-Herausforderungen
Interaktives FAQ-AkkordeonLogin-FormularResponsive NavbarBlog-Seite mit Theme