Denna guide introducerar dig till tre grundläggande men kraftfulla koncept: DOM Manipulation, Event Listeners och Local Storage.
DOM (Document Object Model) är en programmeringsgränssnitt som låter oss ändra innehållet och strukturen på en webbsida med JavaScript.
För att manipulera DOM:en måste vi först välja element vi vill manipulera. De vanligaste metoderna för detta är:
document.getElementById('id'); // Hämtar element med specifikt ID
document.getElementsByClassName('class'); // Hämtar alla element med en specifik klass
document.getElementsByTagName('tag'); // Hämtar alla element med en specifik tagg, t.ex. 'div'
document.querySelector('selector'); // Hämtar det första elementet som matchar CSS-selektorn
document.querySelectorAll('selector'); // Hämtar alla element som matchar CSS-selektorn
När ett element är valt kan du ändra dess egenskaper eller innehåll:
const h1 = document.querySelector('h1');
h1.textContent = 'Hello, World!'; // Ändrar textinnehållet i h1-elementet
h1.style.color = 'blue'; // Ändrar färgen på texten till blå
För att lägga till ett nytt element till DOM:
const newElement = document.createElement('p'); // Skapar ett nytt p-element
newElement.textContent = 'Detta är ett nytt stycke.';
document.body.appendChild(newElement); // Lägger till det nya elementet till body i DOM
För att ta bort ett element från DOM:
const oldElement = document.querySelector('p');
oldElement.remove(); // Tar bort det valda elementet från DOM
div
-behållare och en knapp.div
:en när användaren klickar på knappen.Event Listeners låter dig “lyssna” efter händelser (som klick, tangentnedtryckningar, etc.) och köra en funktion när händelsen inträffar.
const myButton = document.querySelector('button');
myButton.addEventListener('click', function() {
alert('Knappen klickades på!');
});
div
.addEventListener
för att ändra texten inuti div
:en till “Knappen trycktes!” när knappen klickas.Local Storage är en enkel nyckel-/värdelagringsfunktion i webbläsaren som låter dig spara data mellan sessioner.
localStorage.setItem('myName', 'Anna');
const savedValue = localStorage.getItem('myName');
console.log(savedValue); // Skriver ut 'Anna'
localStorage.removeItem('myName');
div
på sidan.För att skapa interaktiva gränssnitt behöver du veta hur man hanterar HTML-element och attribut. Här är några exempel:
const link = document.querySelector('a');
link.setAttribute('href', 'https://example.com'); // Uppdaterar länkens href-attribute
const element = document.querySelector('.some-class');
element.classList.add('another-class'); // Lägger till en klass
element.classList.remove('some-class'); // Tar bort en klass
element.style.backgroundColor = 'yellow'; // Ändrar bakgrundsfärgen
<input>
för att ändra bakgrundsfärgen på en div
när en knapp klickas.Du kan inte bara lyssna på klick, utan det finns en uppsjö av händelser som kan fångas upp, inklusive musrörelser, tangenttryckningar och formulärhändelser.
Ett formulär är en samling av HTML-element som används för att samla in användardata. När ett formulär skickas kan du fånga upp händelsen och utföra en funktion.
Exempel på ett formulär:
<form>
<input type="text" />
<button type="submit">Skicka</button>
</form>
const form = document.querySelector('form'); // Väljer formuläret (första formuläret på sidan om det finns flera)
form.addEventListener('submit', function(event) {
event.preventDefault(); // Stoppar standardbeteendet (skickar inte formuläret)
const inputVal = form.querySelector('input').value;
alert(`Formulärvärdet: ${inputVal}`);
});
Du kan även använda Local Storage för att hantera komplexa data genom att konvertera till och från JSON
format:
JSON (JavaScript Object Notation) är ett format för att lagra och överföra data. Det är lätt att läsa och skriva för både människor och maskiner.
Exempel på JSON:
{
"name": "Anna",
"age": 28
}
const user = { name: 'Anna', age: 28 };
localStorage.setItem('user', JSON.stringify(user)); // Sparar som en sträng
const storedUser = JSON.parse(localStorage.getItem('user'));
console.log(storedUser.name); // Skriver ut 'Anna'
Genom dessa övningar och exempel borde du nu ha en stabil grund att stå på för att bygga interaktiva webbsidor med JavaScript. Ju mer du övar, desto bekvämare blir du med dessa koncept och desto mer komplexa applikationer kommer du att kunna skapa.
« Tillbaka till startsidan | Nästa: Övningar » |