Einfach Schleife
patrick123
- javascript
Hallo Leute, ich versuche gerade meine ersten Schritte in Javascript mit dem Buch "Javascript" von Stefan Koch.
Nun bin ich ganz am Anfang und es wird auf die Schleifen eingegangen, in dem Buch steht folgender Code:~~~html
<!Doctype HTML>
<html>
<head>
<title>Schleifen</title>
</head>
<body>
<div id="ausgabe"></div>
<script type="text/javascript">
var ausgabe = document.getElemntById("ausgabe");
// Hier wird der Beispielcode eingefügt
for (var i = 0; i < 10; i++){
ausgabe.innerHTML += "Text Nr. " + i + "<br>";;
}
</script>
</body>
</html>
Ich habe den Text mindestens 3x überprüft, ob das auch so im Buch steht, vil. ich konnte es nicht zum laufen bringen.
Was es bezwecken soll ist klar, es soll einfach `Text Nr. 0 - Text Nr. 9`{:.language-javascript}
wiedergeben.
Ich hoffe jemand kann mir sagen, wie ich das Programm zum laufen bekommen, denn wenn ich es so Starte passiert rein gar nix.
Mit freundlichen Grüßen,
Patrick
Hallo Patrick,
allgemeiner Tipp: Wenn etwas nicht funktioniert, wie es soll, wirf einen Blick in die Fehlerkonsole deines Browsers.* Dann hättest du sofort dein Problem identifizieren können:
Uncaught exception: TypeError: 'document.getElemntById' is not a function
Error thrown at line 9, column 8 in file://localhost/path/new%20%203.html:
var ausgabe = document.getElemntById("ausgabe");
»» <script type="text/javascript">
> var ausgabe = document.getElemntById("ausgabe");
> // Hier wird der Beispielcode eingefügt
> for (var i = 0; i < 10; i++){
> ausgabe.innerHTML += "Text Nr. " + i + "<br>";;
> }
>
> </script>
Du hast dich also einfach vertippt; richtig ist document.getElementById()
.
Viele Grüße
Claudius
* Wenn es anscheinend funktioniert, guck trotzdem in die Fehlerkonsole. ;-)
Vielen Dank für die Hilfe!!
Ich hätte da noch ein anliegen, diesmal ist es ein einfaches Zahlenraten.
<!Doctype HTML>
<html>
<head>
<title>Schleifen 6.11</title>
</head>
<body>
<div id="ausgabe"></div>
<script type="text/javascript">
function zahlenRaten() {
var zahl = MAth.round(Math.random() * 100 + 0.5);
var fehler = 0;
var fertig = false;
while(!fertig) {
eingabe = prompt("Bitte erraten Sie die Zahl:","");
if(!eingabe) {
fertig = true; // Abbruch durch den Anwender
} else {
if (eingabe == zahl) {
alert("Gewonnen!");
fertig = true; // Zahl wurde erraten
} else {
fehler++;
if (eingabe < zahl)
alert("Geratene Zahl ist zu klein!\n" +"Fehler: " + fehler)
else alert("Geratene Zahl ist zu groß!\n" +
"Fehler: " + fehler);
}
}
}
}
</script>
</body>
</html>
Jedoch wird es nicht gestartet und ich bekomme keine Fehlermeldung rein.
Vielen Dank schon einmal.
Gruß Patrick
Du definierst die Funktion zahlenRaten()
:
function zahlenRaten() {
// […]
}
>
> […]
> Jedoch wird es nicht gestartet und ich bekomme keine Fehlermeldung rein.
Und wie du sagst, wird sie nicht „gestartet“. Dazu müsstest du sie auch noch aufrufen. Setze unter die Funktion ein `zahlenRaten()`{:.language-javascript}, bessere den Fehler aus, den dir die Fehlerkonsole daraufhin anzeigen wird (wieder nur ein Typo) und dann geht’s.
Du definierst die Funktion
zahlenRaten()
:
function zahlenRaten() {
// […]
}
> >
> > […]
> > Jedoch wird es nicht gestartet und ich bekomme keine Fehlermeldung rein.
>
> Und wie du sagst, wird sie nicht „gestartet“. Dazu müsstest du sie auch noch aufrufen. Setze unter die Funktion ein `zahlenRaten()`{:.language-javascript}, bessere den Fehler aus, den dir die Fehlerkonsole daraufhin anzeigen wird (wieder nur ein Typo) und dann geht’s.
hahhaaa... Ihr seid einfach alle so spitze!! :) :) :)
Vielen Dank!
@@patrick123:
nuqneH
Jedoch wird es nicht gestartet und ich bekomme keine Fehlermeldung rein.
Du definierst eine Funktion, rufst diese jedoch niemals auf.
Wenn du es denn tust, bekommst du eine Fehlermeldung.
Beachte, dass JavaScript case-sensitiv ist (d.h. Groß- und Kleinschreibung unterscheidet).
HTML ist das zwar nicht, in Hinblick auf XML-Kompatibilität ist es aber besser, <!DOCTYPE html>
zu schreiben.
Qapla'