• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

[FRAGE] JavaScript Noobie Problem.

Jietzo

New member
Guten!

Ich hatte vor einer Weile in HTML reingeschaut, und wollte mir jetzt mal langsam JavaScript ansehen.
Jedoch stoße ich auf ein irgendwie Dummen Problem:

Code:
1 <html>
<body>
<p>Vor Aufruf des JavaScripts</p>
<script language="javascript">
alert("Hallu Javascript :)");
window.document.write("<p>Innerhalb des JavaScripts</p>");
</script>
<p>Nach Aufruf des JavaScripts</p>
</body>
</html>

So hatte ich mir das vorgestellt!
Ist das Falsch? Ich denke nicht, ich mein der Typ in meinem Guide macht es auch so.
Nur dumm, das ich nicht weiß wie ich das jetzt ausführe.
Wenn ich es mit z.B. Chrome oder Mozilla ausführen will, zeigt er mir lediglich den Code an.. ?
Soweit ich das verstanden habe ist doch in Chrome ein Javascript-Interpreter drin, also muss er das Script doch auch ausführen können oder nicht?
Wahrscheinlich mach ich irgendeinen dummen Fehler.
Also, schonmal danke für Hilfe!

MfG
Jietzo
 
Hallo Jietzo!

Willkommen in der JS Welt!

Wofür ist die 1 in der ersten Zeile? Und der DOCTYPE fehlt und das Attribut language="javascript" schreibt man nicht mehr, einfach weg damit und ein <head> im Konstrukt macht Sinn.
Das Ergebnis dann als Datei mit der Extension .html abspeichern und doppelklicken. Dann sollte sich der IE öffnen und das Dokument anzeigen. Bitte auch beim Entwickeln immer mit F12 vorher die Fehlerkonsole im Browser öffnen und stets im Auge behalten, im Optimalfall bleibt die ganz leer.
Und bitte gewöhne dir gleich von Anfang an konsequent übersichtliche Einrückungen im Code an. Sonst wirst du später bei Fehlersuchen und Erweiterungen/Änderungen unnötig viel Zeit verschwenden, den Code erstmal lesen zu können.
Und zu document.write kommt später noch was. Für den Anfang erscheint mir .innerHTML besser geeignet zu sein aber mach erstmal das Grundgerüst ordentlich.
 
Zuletzt bearbeitet:
Das alert scheint mir auch etwas seltsam, will meinen, das die schließende Klammer, als Teil des Smilys vor den " unter Umständen Probleme bereiten kann.
 
will meinen, das die schließende Klammer, als Teil des Smilys vor den " unter Umständen Probleme bereiten kann.
Nein, in einem String brauchst du außer den begrenzenden Zeichen (die jeweiligen einfachen oder doppelten Anführungszeichen) nichts escapen.
 
Nein, in einem String brauchst du außer den begrenzenden Zeichen (die jeweiligen einfachen oder doppelten Anführungszeichen) nichts escapen.

achso. ok. war das immernoch vom bbcode gewöhnt, wo windows 8 ) ohne leerzeichen zu einem smily mit sonnenbrille führte.
 
Zuletzt bearbeitet:
Alles klar!
Danke schonmal für die Hilfe!
Also ich hab es jetzt mal so umgeändert:

Code:
<html>
<head>
	<title>TITEL</title>
</head>
<body>
	<p>Vor Aufruf des JavaScripts</p>
alert("Hallo Welt!");
window.document.write("<p>Innerhalb des JavaScripts</p>");
</script>
	<p>Nach Aufruf des JavaScripts</p>
</body>
</html>

Jedoch habe ich immer noch das Problem, das ich diesen Code nicht ausführen kann, weil sich dann einfach der Browser öffnet und mir den Code anzeigt.
Er führt ihn aber nicht aus ..
Egal ob ich es als .jb oder .html abspeicher.
IE hab ich komplett abgetötet auf meinem Windows.
Aber mit Mozilla & co sollte es doch auch gehen?

Achja, mein Tutorial scheint recht veraltet zu sein, könnt ihr mir ein aktuelles & gutes empfehlen?

Danke!

MfG
Jietzo
 
Jetzt fehlt vor alert aber was:

Code:
<SCRIPT>

DEIN WEITERER CODE

</script>

Und auch den Doctype hast du vergessen.
 
Jap, "Doctype" sagt mir ja auch noch nichts.
Ich habe bisher nur die ersten Seiten meines Tutorials zu Javascript gemacht, und darin ist noch nichts von Doctype etc. vorgekommen, ich kann den code ja nichtmal ausführen und rumprobieren.

MfG
Jietzo
 
dbarthel hat doch geschrieben, bei dir fehlt das einleitende <script> an der richtigen Stelle. Das ist etwas, was man bei sauber eingerücktem Code sofort sieht.
 
Achso.

Code:
<html>
<head>
	<title>TITEL</title>
</head>

<body>

<script>
	<p>Vor Aufruf des JavaScripts</p>
alert("Hallo Welt!");
window.document.write("<p>Innerhalb des JavaScripts</p>");
</script>
	<p>Nach Aufruf des JavaScripts</p>
</body>

</html>

So?
Sorry, ich hätte es auch selber bemerkt, nur muss ich erstmal das Problem beheben, das ich es einfach nicht ausführen kann.
Hat da keiner eine Lösung?

MfG
Jietzo
 
Lass am Besten gleich die Finger von document.write! Stattdessen solltest du z.B. .textContent verwenden:
HTML:
<!DOCTYPE HTML>
<html>
 <head>
   <title>Titel</title>
   <meta charset="UTF-8">
   <script>
     function irgendeineFunktion(){
      alert("Hallo Welt!");
      document.getElementById("element").textContent = "Innerhalb des JavaScripts";
     }
   </script>
 </head>
 <body onload="irgendeineFunktion()">
   <p>Vor Aufruf des JavaScripts</p>
   <p id="element"></p>
   <p>Nach Aufruf des JavaScripts</p>
 </body>
</html>

Jetzt habe ich dir mal ein valides HTML-Dokument gezeigt. Wieso hast du den Hinweis auf den DOCTYPE wieder nicht beachtet?
 
Zuletzt bearbeitet:
Ja, weil es mir gerade nicht um das Script geht, das kann man sicherlich besser machen das weiß ich. :)
Aber es geht mir gerade darum, dass ich den Code überhaupt erstmal ausführen kann!
Es bringt mir ja nichts das alles zu schreiben wenn ich es am ende nichteinmal ausführen kann um es zu testen!
DOCTYPE kannte ich noch überhaupt nicht! Das kam noch nicht in meinem Tutorial vor!
So wie ich es machen sollte laut dem Tutorial:


Code:
1 <html>
2 <body>
3 <p>Vor Aufruf des JavaScripts</p>
4 <script language="javascript">
5 <!--
6 // Jede Menge JavaScript-Anweisungen
7 alert("Hallo Welt!");
8 window.document.write("<p>Innerhalb des JavaScripts</p>");
9 //-->
10 </script>
11 <p>Nach Aufruf des JavaScripts</p>
12 </body>
13 </html>

So. Damit scheinen aber alle hier unzufrieden zu sein.
Mehr als dass, was in diesem Code vorkommt kenne ich nicht, deswegen hatte ich auch kein Doctype verwendet.

MfG
Jietzo
 
Zuletzt bearbeitet:
Es ist eine PDF Datei die ich mir aus dem Internet runtergeladen habe.
Ich dachte eigentlich es sei ganz gut.
Ich lad es im Anhang hoch.

MfG
Jietzo
 

Anhänge

  • b026_javascript.pdf
    833,6 KB · Aufrufe: 3
Aber es geht mir gerade darum, dass ich den Code überhaupt erstmal ausführen kann!
Was meinst du denn damit? Wenn du auf Windows arbeitest brauchst du die Datei doch nur im Explorer doppelklicken, dann geht der Browser auf und zeigt die Seite an und führt das JS aus. Was genau klappt denn da bei dir nicht?
 
Der Browser zeigt mir nicht "Hallo Welt" bzw. es öffnen sich keine Fenster.
Nur das geschriebene von HTML wie z.b. <p> Hallo! </p> wird richtig angezeigt!
Aber von Javascript keine Spur!
Was muss ich da machen?

MfG
Jietzo
 
Hast du die Datei denn auch sicher als .html gespeichert?
Meiner Meinung nach solltest du dennoch - gerade weil du anfängst, JS zu lernen - auf eine valide, saubere Dokumentendstruktur achten, wozu auch ein Doctype gehört. Und das language-Attribut ist wie gesagt veraltet und document.write sollte nicht verwendet werden...
 
Jietzo, ich verstehe dich nicht. In Beitrag 13 hat Julian dir doch fehlerfreien Code gezeigt mit allem drum und dran. Hast du den mal probiert? Wenn nein, macht das bitte. Und wenn das geht kann man über die einzelnen Zeilen reden. Was in deinem Tutorial steht kannst du mal vorübergehend ganz vergessen.
 
Zurück
Oben