On Github subugoe-zukunftstag / 2016
HTML ist nur eine Auszeichnungssprache, das heißt es erzählt dem Browser nur "das ist eine Überschrift", und "das ist ein Text". Aber es sagt nicht wie diese Elemente auszusehen haben.
Diesen Part übernimmt CSS.
z.B. den Hintergrund der Seite einfärben:
body { background-color: lightblue; }
Oder den Hintergrund des divs mit der id="vader"
#vader { background-color: red; }
CSS kann zum Beispiel auf der Webseite stehen, eingeschlossen in die <style>-Tags:
<style> body { background-color: lightblue; } #vader { background-color: palegreen; } </style>
// Alle p-Tags p { background-color: red; font-style: italic; font-weight: bold; } // das p-Tag mit der ID "besonders" (<p id="besonders">Besonderer Text</p>) #besonders { font-size: 70%; color: blue; }
Mit JavaScript können sich die (Web)Seiten verändern während man sie anschaut.
JavaScript schreibt man innerhalb des<script></script> Tags.Computer sind total pingelig!!! Leerzeichen an der falschen Stelle oder ein Groß- statt eines Kleinbuchstaben kann das Programm kaputt machen.
Ein guter Teil der Zeit beim Programmieren geht mit Debugging drauf.
Im Firefox-Menü unter "Entwicklerwerkzeuge" "Webkonsole" aufrufen.
Dann erscheint ein Fenster unter der Webseite in der man mit der Webseite interagiern (sprechen) kann.
alert("Hallo Welt");
1+3;
Stellt eine ganze Reihe nützlicher Funktionen zur Verfügung
Vor allem zum Verändern von Seitenelementen
$("p").css("background-color","blue"); $("p").html("hallo Leute"); $("p").append(" Und hier kommt noch mehr Text ");
$(document).ready(function() { // Das hier wird getan nachdem die Seite geladen ist });
<img src="vader.png" id="vader">
body { background-color: Midnightblue; cursor: url("lightsaber.png"),auto; color: white; }
$("#vader").css({ "top":"100px", "left":"100px" });
x-Wert: Math.random()*window.innerWidth/2 y-Wert: Math.random()*window.innerHeight/2
$("#vader").css({ "left": Math.random()*window.innerWidth/2, "top": Math.random()*window.innerHeight/2 });
var spiele = function() { // Vader versetzen $("#vader").css({ "left": Math.random()*window.innerWidth/2, "top": Math.random()*window.innerHeight/2 }); // Funktion nach 1000 Millisekunden wieder aufrufen setTimeout( function() { spiele(); }, 1000); };
Aber wir wollen Vader ja nur versetzen, wenn wir weniger als 1 Sekunde gebraucht haben um ihn zu schlagen!
Also brauchen wir eine Stopuhr
Die Stopuhr zählt runter. Wenn Vader angeklickt wird wird sie neu gestartet und Vader versetzt, ansonsten wird das Spiel beendet.
var stopuhr; var spiele = function() { // Versetze Vader und starte Stopuhr neu } var beendeSpiel = function() { // Beende das Spiel }
var stopuhr; var spiele = function() { // Beende die alte Stopuhr (falls vorhanden) clearTimeout( stopuhr ); // Versetze Vader $("#vader").css({ "left": Math.random()*window.innerWidth/2, "top": Math.random()*window.innerHeight/2 }); // Starte Stopuhr neu stopuhr = setTimeout( function() { beendeSpiel }, 1000 ); }
var beendeSpiel = function() { // lasse Vader verschwinden $("#vader").css({ "visibility": "hidden" }); // schreibe Meldung $("body").html("Du hast verloren!"); }
$("#vader").click( function() { spiele(); });