Optionen und weiterführende Links



In der Datenbank befinden sich derzeit 477 Specials. Alle Specials anzeigen...

Jetzt wird's dynamisch - JavaScript

Jetzt wird's dynamisch - JavaScript

JavaScript ist eine clientseitige Programmiersprache, die vom Browser-Hersteller Netscape 1995 eingeführt wurde. Der JavaScript-Code kann entweder in den HTML-Code eingebettet oder als eigene Datei eingebunden werden (ähnlich wie bei CSS). Für die Ausführung des Codes ist der Browser zuständig. Praktisch alle heutigen Browser können JavaScript ausführen, wenn auch nicht alle gleich gut.

Um einem verbreiteten Mißverständnis gleich vorzubeugen: Mit der objektorientieren Programmiersprache Java hat JavaScript nicht viel zu tun. Als Netscape JavaScript auf den Markt brachte, war Java gerade "in", also baute man das Wort "Java" in den Namen der neuen Sprache ein. Offiziell heißt JavaScript sowieso EMCAScript (nach dem Industriestandard), aber den Begriff benutzt eigentlich niemand.

Eine Besonderheit gibt es (mal wieder) bei Microsofts Internet Explorer. Der interpretiert nicht nur JavaScript, sondern auch eine zusätzliche IE-only-Sprache namens JScript. JScript kann einige Dinge, die JavaScript (mit voller Absicht) nicht kann.

Das betrifft insbesondere Zugriffe auf die Festplatte des Rechners, auf dem der Browser läuft. JavaScript läuft in einer sogenannten Sandbox, die nach außen abgeschirmt ist. Man könnte sagen, JavaScript spielt im Sandkasten, wo es nicht viel Schaden anrichten kann. Das ist ausgesprochen sinnvoll, schließlich wollt ihr nicht jeder Webseite, auf die Ihr surft, vollen Zugriff auf Eure Festplatte geben. Die IE-only-Sprache JScript jedoch kennt neben den Möglichkeiten von JavaScript noch Zugriffe auf das lokale Dateisystem und Windows-eigene Funktionen (zusammengefaßt unter dem Begriff Windows Scripting Host). Es ist leicht einsehbar, daß sich mit dem Scripting Host viel Schaden anrichten läßt. Viele Viren und Würmer arbeiten mit Hilfe des Scripting Hosts, wenn auch meist mit anderen Sprachen als JScript (Visual Basic Script etc.). Daher wird im allgemeinen empfohlen, den Scripting Host im Windows-Setup komplett zu deinstallieren.

Leider haben die verschiedenen Browser unterschiedliche Versionen von JavaScript eingebaut. In der Praxis ist daher häufig nicht mehr nachvollziehbar, welcher Browser was genau kann. Unterschiede gibt es nicht nur bei den verschiedenen Browsern, sondern auch bei unterschiedlichen Versionen desselben Browsers, teilweise sogar bei unterschiedlichen Implementationen für verschiedene Betriebssysteme. Da hilft nur, mit möglichst vielen Browser-Varianten zu testen.

Ganz grob könnt Ihr Euch nach folgender Einteilung richten

  • Nach den offiziellen Standards des W3C richten sich im wesentlichen der Internet Explorer ab 5.0 und Netscape ab 6.0, inklusive Mozilla (Stichwort DOM).
  • Einen eigenen Seitenweg neben dem W3C geht der Internet Explorer bis einschließlich 4.x (Stichwort all-Objekt).
  • Einen wieder anderen Seitenweg geht der Netscape Navigator bis einschließlich 4.x (Stichwort layer).
  • Opera bemüht sich, den W3C-Standards nahe zu kommen, und wird darin von Version zu Version besser. Trotzdem ist Opera noch immer das große Problemkind, was JavaScript angeht.

Insbesondere, wenn Ihr Internet Explorer und Netscape Navigator bis 4.x unterstützen wollt, müßt Ihr in vielen Fällen sogar mehrere Versionen Eurer Seite schreiben.

Übersicht

Einbindungen
Dieser Abschnitt zeigt, wie Ihr JavaScript-Code in Eure HTML-Dateien einbauen könnt.

Grundlagen
Hier lernt Ihr einige Syntax-Details kennen, ebenso die wichtigsten vordefinierten Objekte und das Konzept der Eventhandler.

Fensterln
Das window-Objekt, um das es in diesem Abschnitt geht, stellt das aktuelle Browser-Fenster dar. Damit könnt Ihr kleine Meldungsfenster erzeugen, das Aussehen des Fensters beeinflussen, ein neues HTML-Dokument laden, und - nicht zuletzt - neue Fenster öffnen.

document
Nach dem window-Objekt geht es um das document-Objekt. Damit habt Ihr Zugriff auf das aktuell geladene Dokument. Allerdings beginnen hier auch die Unterschiede bei den verschiedenen Browsern und damit die Probleme.

DOM, aber keine Kirche
Dieser Abschnitt ist eine Einführung in das Document Object Model der modernen Browser. Es bietet Euch (fast) unbeschränkten Zugriff auf die Bestandteile Eurer HTML-Seiten.

Von Knoten und IDs
Nach der Einführung im letzten Abschnitt seht Ihr hier, wie Ihr das DOM praktisch nutzen könnt.

Alles in all
Die älteren Versionen des Internet Explorers (bis 4.x) kannten das DOM noch nicht. Statt dessen könnt Ihr hier das all-Objekt verwenden, das in diesem Abschnitt vorgestellt wird.

layer
Auch der Netscape Navigator kennt erst seit einiger Zeit das DOM. Vorher, ebenfalls bis Version 4.x, wurde hier mit Layern gearbeitet.

Lora will 'nen Keks!
Dieser Abschnitt zeigt Euch, was Cookies sind und wie Ihr sie benutzen könnt.

Speisekarte
Zum Abschluß des JavaScript-Teils noch ein Skript, nach dem oft gefragt wird: Ein Drop-Down-Menu.



Special vom: 16.01.2003
Autor dieses Specials: Henning Kockerbeck
Die weiteren Unterseiten dieses Specials:
Die reine Lehre - HTML
Stilvoll - CSS
Kleiner Grundkurs Programmieren
Die andere Seite der Dynamik - PHP
Neue Gefilde - XML
Weiterführende Links
Zurück zur Hauptseite des Specials


?>