JavaScript-Intro
Was ist JavaScript?



Ähnlich wie bei CSS gibt es verschiedene Möglichkeiten, Javascript einzubinden: direkt im HTML-Code, innerhalb eines <script></script>
oder in einer einen eigenen Datei. Wir verwenden die letzte Möglichkeit. Dafür erstellen wir eine neue Datei script.js
und verlinken die Datei am Ende unseres <body>
-Elements.
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>HTML Einführung</title>
</head>
<body>
<script src="js/script.js" type="text/javascript"></script>
</html>
In diese Datei können wir nun unseren Javascript-Code schreiben und er wird automatisch ausgeführt.
Download JavaScript-StarterLogging
Es gibt verschiedene Möglichkeiten, mit Javascript Inhalte anzuzeigen.
Eine Möglichkeit ist, ein Pop-Up zu öffnen: window.alert('Hello World')
Eine andere Möglichkeit ist, die Entwickler-Console zu verwenden: console.log('Hello World')
. Drücke Option + ⌘ + I
(Mac) oder Srg + I
(Windows) und klicke anschließend auf „Console“ um den Inhalt zu sehen.
HTML-Elemente auswählen
Zunächst müssen wir das Element finden und auswählen, welches wir manipuliern möchten
Es gibt verschiedenste Wege, das zu erreichen. Einige Beispiele:
Selector | Beispiel | Beschreibung |
---|---|---|
document.getElementById('') |
document.getElementById('first-paragraph') |
wählt das Element mit der ID first-paragraph |
document.querySelectorAll('.') |
document.querySelectorAll('.circle') |
wählt die Elemente mit der Klasse circle aus |
document.querySelectorAll('') |
document.querySelectorAll('div') |
wählt die Elemente mit div Tag |
Weil es mehrere Elemente mit einer Klasse oder einem Tag geben kann, wählen die jeweiligen Selektoren eine Gruppe von Elementen aus.
HTML-Manipulation
Wir können ein HTML-Element auf verschiedene Arten Manipulieren:
Beispiel | Beschreibung |
---|---|
document.getElementById('first-paragraph').innerHTML = 'Hello World!' |
wählt das Element mit der ID first-paragraph aus und ändert den darinstehenden Text |
document.getElementById('first-paragraph').style.color = 'red' |
wählt das Element mit der ID first-paragraph aus und ändert die Schriftfarbe |
document.getElementById('first-paragraph').classList.add('highlighted') |
wählt das Element mit der ID first-paragraph aus und fügt deine Klasse hinzu |
document.getElementById('first-paragraph').classList.remove('highlighted') |
wählt das Element mit der ID first-paragraph aus und entfernt eine Klasse |
Wenn ich Elemente über Klasse oder Tag auswähle und deshalb eine Gruppe von Elementen erhalte, müssen diese Elemente etwas anders angesprochen werden:
document.querySelectorAll('paragraph').forEach((element) => {
element.innerHTML = 'Hello World!'
})
Event-Listeners
Javascript „events“ sind Ereignisse, die auf einer Webseite passieren. Häufig hängen sie mit einer User-Interaktion zusammen. Wir können mit Javascript HTML-Manipulationen an diese Ereignisse koppeln.
event | Beispiel | Beschreibung |
---|---|---|
click |
window.addEventListener('click', () => { document.getElementById('first-paragraph').classList.add('highlighted') }) |
wenn der User auf das Fenster klickt, erhält das Element eine neue Klasse |
resize |
window.addEventListener('resize', () => { document.getElementById('first-paragraph').classList.add('highlighted') }) |
wenn der User die Fenstergröße verändert, erhält das Element eine neue Klasse |
scroll |
window.addEventListener('scroll', () => { document.getElementById('first-paragraph').classList.add('highlighted') }) |
wenn der User scrollt, erhält das Element eine neue Klasse |
Der Code kann auf Events reagieren, die das gesamte Browser-Fenster betreffen (wie ein Scroll im Fenster), oder auf Events, die nur ein einzelnes Element betrifft. So wird z.B. nur auf ein Klick auf einen button reagiert:
document.getElementById('my-button').addEventListener('scroll', () => {
})