LinuxUser Programmieren (Vorschau)
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
Javascript<br />
SCHWERPUNKT<br />
Javascript, JQuery und das<br />
DOM-Modell im Zusammenspiel<br />
Blick<br />
aufs<br />
Objekt<br />
© Bernadg, sxc.hu<br />
Javascript hat sich zu einer der wichtigsten Programmiersprachen<br />
entwickelt. Wer die Grundlagen beherrscht, hat im Handumdrehen<br />
das Web 2.0 gemeistert. Peter Kreußel<br />
Bei den meisten Webanwendungen<br />
und dynamischen Webseiten<br />
sitzt die Programmlogik auf dem<br />
Server: Ein in PHP, Java, Python,<br />
oder Perl geschriebenes Skript erzeugt<br />
auf Benutzeranfragen zugeschnittene<br />
HTML-Seiten [1]. Doch<br />
die Browser enthalten mit ihren<br />
Javascript-Interpretern eine vollständige<br />
und dazu sehr leistungsfähige<br />
Laufzeitumgebung.<br />
Javascript-Programme reagieren<br />
auf Eingaben des Benutzers<br />
und greifen über eine DOM genannte<br />
API auf die geöffnete<br />
HTML-Seite zu. Diese Schnittstelle<br />
von Javascript zu HTML erlaubt<br />
es, Attribute für jedes Tag<br />
auf der Seite (Farbe, Größe oder<br />
Sichtbarkeit) zu ändern. Darüber<br />
hinaus bietet sie die Möglichkeit,<br />
Bereiche der Seite zu entfernen<br />
oder beliebige HTML-Elemente<br />
an jeder Stelle der Seite einzufügen<br />
(Abbildung A).<br />
A Die Javascript-Laufzeitumgebung, die über die DOM-Schnittstelle in beide<br />
Richtungen mit der HTML-Seite kommuniziert, reagiert auf Eingaben des Benutzers<br />
und verändert Inhalt und Eigenschaften von HTML-Tags.<br />
Alte Bekannte<br />
Abgesehen von der Objektorientierung<br />
ähnelt Javascript der Programmiersprache<br />
C. Viele andere<br />
Sprachen, von Java bis Perl, teilen<br />
diese Grundstrukturen (Schleifen,<br />
Bedingungen, Operatoren)<br />
ebenfalls. Darum fällt der Umstieg<br />
leicht, solange Sie nur die<br />
prozeduralen Elemente der Sprache<br />
einsetzt, was das Gliedern des<br />
Quellcodes in Routinen für bestimmte<br />
Aufgabe umfasst.<br />
Für kleinere Anwendungen<br />
funktioniert dies gut. Die für größere<br />
Programme unverzichtbare<br />
Objektorientierung setzt Javascript<br />
allerdings sehr eigenwillig<br />
um. Die zweite Hälfte des Artikels<br />
widmet sich deshalb dieser speziellen<br />
Variante des Kapselns von<br />
Daten und Vererbung.<br />
Die Wahl des Namens Javascript<br />
folgte eher Marketingüberlegungen<br />
als sachlichen Gründen: Außer<br />
einem Grundinventar, das<br />
Java ohnehin mit C und weiteren<br />
Sprachen teilt, übernimmt Javascript<br />
nur die Dot-Notation Objekt.Attribut.<br />
Anders als bei Java<br />
handelt es sich bei Javascript jedoch<br />
um keine streng objektorientierte<br />
Sprache.<br />
Außerdem integriert Javascript<br />
Elemente des funktionalen <strong>Programmieren</strong>s,<br />
die Java bis heute<br />
fehlen. Funktionale Programmier-<br />
Jquery 1.8.2,<br />
Beispieldateien<br />
LU/javascript/<br />
README<br />
Dieser Artikel führt in<br />
den Umgang mit der im<br />
Browser eingebauten<br />
Sprache Javascript ein.<br />
Er erläutert die Grundzüge<br />
der Sprache und<br />
gibt Beispiele für den<br />
Zugriff auf die geöffnete<br />
HTML-Seite über die<br />
DOM-Schnittstelle.<br />
GLOSSAR<br />
Objektorientierung: Objektorientierte<br />
Programmiersprachen<br />
bündeln<br />
in den namensgebenden<br />
Objekten Datenattribute<br />
und zugehörige<br />
Methoden zu einer logischen<br />
Einheit.<br />
www.linux-user.de<br />
11 | 12 25