Wir sehen uns nur noch zwei Stunden pro Woche!

Dritte jetzt neue Technologie: JavaScript
| Abkürzung | richtiger Name | Nutzen und Zweck |
|---|---|---|
| HTML | ||
| CSS | ||
| JS |
Das ist eine vollwertige Programmiersprache!
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<script src="script.js" sync></script>
<title>Test</title>
<style>
img
{
width:200px;
}
</style>
</head>
<body>
<img src="01_Technologien.png" id="bild1">
</body>
</html>
'use strict';
document.addEventListener('DOMContentLoaded', function ()
{
alert("Ich heiße dich herzlich Willkommen!");
document.getElementById('bild1').addEventListener('pointerover', zoom1_in);
document.getElementById('bild1').addEventListener('pointerleave', zoom1_out);
});
function zoom1_in()
{
var dasBild1 = document.getElementById('bild1');
dasBild1.style.width = "400px";
}
function zoom1_out()
{
var dasBild1 = document.getElementById('bild1');
dasBild1.style.width = "200px";
}
Im Folgenden geht es darum, dass man das Konzept, das ihr bisher verfolgt habt, ins Absurde weiterdenkt. Gleichzeitig nähern wir uns der Idee eines Memoryspiels.
Um eine allgemeine Funktion zu schreiben, die auf alle möglichen HTML-Elemente angewendet werden kann, verwendet man Event-Delegation.
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<title>Event-Delegation mit benannter Funktion</title>
<style>
button { margin: 4px; }
</style>
</head>
<body>
<div id="container">
<button>Knopf 1</button>
<button>Knopf 2</button>
<button>Knopf 3</button>
</div>
<p id="ausgabe"></p>
<script>
function wer_bin_ich(event) {
if (event.target.tagName !== 'BUTTON') return;
document.getElementById('ausgabe').textContent =
'Geklickt: ' + event.target.textContent +
' (currentTarget: ' + event.currentTarget.id + ')';
}
const container = document.getElementById('container');
container.addEventListener('click', wer_bin_ich);
// Listener kann jetzt jederzeit entfernt werden:
// container.removeEventListener('click', handleContainerClick);
</script>
</body>
</html>
Hausaufgabe: Spiele alle Levels durch von https://compute-it.toxicode.fr/ und https://silentteacher.toxicode.fr/
Erkläre auf Basis des Gelernten folgende Konzepte:

Wir beginnen mit den ersten Levels eines Roboterspiels: https://gcm.schule/jsrobot
Hier lernt man die Grundfunktionen kennen. Außerdem lernt man, die verschiedenen Tools zu nutzen.
Achtung: Wenn man etwas programmiert hat, muss man es auch erklären können. Alle Programme werden am Stundenende per Mail an den Lehrer gesendet. Wenn man früher fertig wird, darf man auch früher eine Mail schicken.
Sammle keine Coins!
und
Sammle exakt vier Coins!
Have a lot of fun!