← Nivå 2 – Trollmann

Leksjon 2 av 8 ⏱ 25 minutter

Din første trylleformular: en knap, der gjør noget

Siden reagerer på et klikk for første gang. Du lærer at finde et element og lytte etter hændelser.

Jeg viser deg: de tre trin i hver trylleformular

Næsten alt JavaScript gjør på en side følger tre trin:

  1. Finn et element på siden (en knap, en overskrift, et bilde…),
  2. lyt etter en hændelse (et klik, musen over, indtastning af tekst…),
  3. gjør noget (endre teksten, fargen, skjul det, vis det…).

Sådan ser det ud i kode. I HTML, legg til en knap og et avsnitt:

<button id="my-button">Click me</button>
<p id="greeting">Nothing has happened yet.</p>

Og i script.js:

// 1. Find the elements by their id
const myButton = document.getElementById("my-button");
const greeting = document.getElementById("greeting");

// 2. Listen for a click on the button
myButton.addEventListener("click", () => {
  // 3. Do something: change the paragraph's text
  greeting.textContent = "The spell works! 🎉";
});

La oss bryde de nye ting ned:

Nå er det din tur 💪

Legg til din første trylleformular til din nettside. Velg én baseret på prosjektet ditt (eller finn på din egen):

🏫 Skolenettside – en "Hva er der til frokost i dag?"-knap

HTML (på forsiden):

<button id="lunch-button">What's for lunch today?</button>
<p id="lunch"></p>

script.js:

const lunchButton = document.getElementById("lunch-button");
const lunch = document.getElementById("lunch");

lunchButton.addEventListener("click", () => {
  lunch.textContent = "Today: pizza and salad! 🍕";
});
🙋 Personlig nettside – en "Fortæl mig en joke"-knap
<button id="joke-button">Tell me a joke</button>
<p id="joke"></p>
const jokeButton = document.getElementById("joke-button");
const joke = document.getElementById("joke");

jokeButton.addEventListener("click", () => {
  joke.textContent = "Why do programmers prefer dark mode? Because light attracts bugs! 😄";
});
🌍 Reisejournal – en "Hvor skal vi hen neste gang?"-knap
<button id="where-button">Where are we going next?</button>
<p id="where"></p>
const whereButton = document.getElementById("where-button");
const where = document.getElementById("where");

whereButton.addEventListener("click", () => {
  where.textContent = "Packing our bags: we're headed to the beach in Greece! 🌊";
});
⚽ Klubnettside – en "Hvornår er neste kamp?"-knap
<button id="match-button">When's the next match?</button>
<p id="match"></p>
const matchButton = document.getElementById("match-button");
const match = document.getElementById("match");

matchButton.addEventListener("click", () => {
  match.textContent = "Saturday at 10:00, home game vs. Riverside. Come cheer us on! 📣";
});

Bonus: style din knap i CSS, så den ser pæn ud:

button {
  font-size: 16px;
  font-weight: bold;
  padding: 10px 20px;
  border: none;
  border-radius: 999px;
  background-color: #1d4ed8;
  color: white;
  cursor: pointer;
}

button:hover {
  background-color: #1e40af;
}
⚠️

Fungerer det ikke? Åpne konsollen (F12). De mest vanlige feil: 1) id i HTML matcher ikke nøyaktigt navnet i getElementById (selv store/små bokstaver betyder noget), 2) <script> er ikke helt på slutten av <body>, 3) en manglende parentes – konsollen forteller deg linjenummeret.

Sjekk deg selv: Du klikker på knappen, og tekst vises på siden. Du har lige forbundet alle tre sprog på nettet: HTML (knappen), CSS (utseendet) og JavaScript (atferden).

Dette tar du med deg fra leksjonen