Fehler im Selfhtml-beispiel?
lillcube
- javascript
Hallöchen ;)
Ich bin gerade dabei hier mithilfe von SELFHTML Javascript zu lernen, und habe einen kleinen Fehler in einem Beispiel entdeckt:
http://de.selfhtml.org/javascript/sprache/variablen.htm#definieren
der Quelltext sieht so aus:
<html>
<head>
<title>Test</title>
</head>
<body>
<script type="text/javascript">
var Hinweis = "Gleich werden Quadratzahlen ausgegeben";
alert(Hinweis);
function SchreibeQuadrate () {
var SinnDesLebens = 42;
var i, x;
var Satzteil = "Das Quadrat von ";
for (i = 1; i <= SinnDesLebens; ++i) {
x = i * i;
document.write(Satzteil + i + " ist " + x + "<br>");
}
}
</script>
</body>
</html>
Ich hab das ganze zum studieren in meinen Editor kopiert und gleich ausprobiert - und festgestellt, dass es nicht funktioniert. Irre ich mich, oder fehlt da einfach nur der Befehl zum Ausführen der Funktion? Meines Erachtens müsste man da ein document.write(SchreibeQuadrate ()) ergänzen.. also etwa so:
<html>
<head>
<title>Test</title>
</head>
<body>
<script type="text/javascript">
var Hinweis = "Gleich werden Quadratzahlen ausgegeben";
alert(Hinweis);
function SchreibeQuadrate () {
var SinnDesLebens = 42;
var i, x;
var Satzteil = "Das Quadrat von ";
for (i = 1; i <= SinnDesLebens; ++i) {
x = i * i;
document.write(Satzteil + i + " ist " + x + "<br>");
}
}
document.write(SchreibeQuadrate ())
</script>
</body>
</html>
Ich bin aber leider noch sehr unbedarft was JavaScript anbelangt, und alles was ich mit Programmierung zu tun hatte war ein kleines bisschen Q-Basic vor Jaaaahren.. Liege ich mit meiner Vermutung richtig, was den Fehler betrifft? Und wenn ja, woran kann ich mich wenden, um darauf aufmerksam zu machen, damit man es vielleicht korrigiert?
Grüße cube
Hallo,
document.write(Satzteil + i + " ist " + x + "<br>");
Da steht´s doch schon.
document.write(SchreibeQuadrate ())
Und da nochmal.
Du musst einfach nur SchreibeQuadrate() aufrufen.
Viele Grüße
Du musst einfach nur SchreibeQuadrate() aufrufen.
Meinst du, anstatt des document.write(SchreibeQuadrate()) nur SchreibeQuadrate() oder brauch man den SchreibeQuadrate()- zusatz in dem script-tag gar nicht dazu schreiben?
thx für deine hilfe
cube
Hallo,
Meinst du, anstatt des document.write(SchreibeQuadrate()) nur SchreibeQuadrate() oder brauch man den SchreibeQuadrate()- zusatz in dem script-tag gar nicht dazu schreiben?
Ersteres.
In der SchreibeQuadrate-Funktion steckt das document.write() ja schon drin, es wird also von dieser Methode bereits erledigt.
Anders wäre es z. B., wenn diese Funktion einen Rückgabewert hätte (in diesem Fall wäre das allerdings unpraktisch). Die folgende Funktion z. B.:
function sum(a,b) {
return a+b;
}
Mit return gibt sie die Summe der Werte zurück. Die aufrufende Funktion kann diesen Wert dann direkt weiterverarbeiten:
document.write(sum(46,38));
Viele Grüße
Okay, vielen dank. Ich werd es mir merken.
Grüße, cube
Hallo
Meinst du, anstatt des document.write(SchreibeQuadrate()) nur SchreibeQuadrate() oder brauch man den SchreibeQuadrate()- zusatz in dem script-tag gar nicht dazu schreiben?
wenn Du Dir den Quelltext des Anzeigebeispiels (Link verwendet das view-source-Pseudoprotokoll, funktioniert somit nicht im IE unter Windows XP SP2) anschaust, so stellst Du fest, dass die Funktion SchreibeQuadrate() im onload-Eventhandler des body-Elementes aufgerufen wird.
Wenn Du der Ansicht bist, dass dieser Unterschied zum veröffentlichten Code ein Fehler ist, so könntest Du diesen im SELFHTML BugTracker eintragen. Du wirst feststellen, dass er bereits eingetragen ist, vermutlich aufgrund Deines Postings.
Freundliche Grüße
Vinzenz
hallo Vinzenz,
Link verwendet das view-source-Pseudoprotokoll, funktioniert somit nicht im IE unter Windows XP SP2
Konqueror (3.5.2) meldet auch nur "unbekanntes Protokoll" und warnt: "Verweis wird als nicht aicher eingestuft" - nett, gelle?
Grüße aus Berlin
Christoph S.
Hallo Christoph,
Link verwendet das view-source-Pseudoprotokoll, funktioniert somit nicht im IE unter Windows XP SP2.
Ersteres hab' ich gestern gelernt, jetzt auch verlinkt.
Konqueror (3.5.2) meldet auch nur "unbekanntes Protokoll" und warnt: "Verweis wird als nicht aicher eingestuft" - nett, gelle?
Ob dies mit einer vergleichbaren Verzahnung zusammenhängt?
Freundliche Grüße
Vinzenz
Moin!
Quelltext des Anzeigebeispiels (Link verwendet das view-source-Pseudoprotokoll, funktioniert somit nicht im IE unter Windows XP SP2)
Und nicht im Opera. Da wird der Link als relative URL aufgefaßt und führt zu einem 404.
Wäre eigentlich Zeit, dieses Pseudo-Pseudoprotokoll mal aus der Verlinkbarkeit zu entfernen.
- Sven Rautenberg
Hallo cube
Ich bin gerade dabei hier mithilfe von SELFHTML Javascript zu lernen, und habe einen kleinen Fehler in einem Beispiel entdeckt:
http://de.selfhtml.org/javascript/sprache/variablen.htm#definieren
Ja, der angezeigte Beispielquelltext stimmt nicht mit dem Beispiel selbst
überein.
Ich hab das ganze zum studieren in meinen Editor kopiert und gleich ausprobiert - und festgestellt, dass es nicht funktioniert.
Verwende dazu den Quelltext des verlinkten Beispiels.
... Und wenn ja, woran kann ich mich wenden, um darauf aufmerksam zu machen, damit man es vielleicht korrigiert?
Dies kann entweder im BugTracker eingegeben werden oder über das
Formular für Fehlermeldungen.
Ich habe es bereits getan Bug #1311
Auf Wiederlesen
Detlef