Rheinwerk Computing < openbook > Rheinwerk Computing - Professionelle Bücher. Auch für Einsteiger.
Professionelle Bücher. Auch für Einsteiger.

 <<   zurück
JavaScript und AJAX von Christian Wenz
Das umfassende Handbuch
Buch: JavaScript und AJAX

JavaScript und AJAX
839 S., mit DVD, 39,90 Euro
Rheinwerk Computing
ISBN 3-89842-859-1
gp Kapitel 1 Einleitung
  gp 1.1 Die Geschichte von JavaScript
  gp 1.2 Voraussetzungen
  gp 1.3 Zur 7. Auflage
  gp 1.4 Die Icons in diesem Buch

»Es sind verschiedene sicherheitsrelevante Schwachstellen bekannt, durch die bei Ausführung von JScript/JavaScript-Code Schäden auf dem Anwenderrechner entstehen können.« »Vorsicht ist geboten, wenn Unternehmen für ihre Web-Seiten das Gestaltungssystem JavaScript verwenden. Dahinter verbergen sich kleine Programme, die sich unbemerkt auf dem Kunden-PC einnisten und ihn angreifbar für fremde Zugriffe machen.«

Kapitel 1 Einleitung

JavaScript ist in aller Munde – sowohl im positiven als auch im negativen Sinne. Immer wieder tauchen neben sinnvollen Empfehlungen wie der vom BSI auch Horrormeldungen wie aus der BamS in der Presse auf. Der Grund dafür ist, dass den Browser-Herstellern immer wieder Fehler bei der Programmierung ihrer Browser unterlaufen. Zwar werden eiligst Bugfixes zur Verfügung gestellt, aber der (Image-)Schaden ist schon eingetreten. Jedoch: Eine frühere Pressemitteilung des BSI hat in der Fachpresse zu scharfer Kritik geführt; teilweise war von überzogener Panikmache die Rede. Die inhaltliche Qualität der Aussage aus der BamS bedarf keines Kommentars.

Ohne die Diskussion allzu sehr vertiefen zu wollen: Mit JavaScript kann man die eher beschränkten Möglichkeiten von HTML erweitern. Es handelt sich hierbei um eine clientseitige Programmiersprache. Das heißt, alles läuft im Browser ab, und man muss keine besonderen Server-Voraussetzungen erfüllen. Letzterer Punkt ist (noch) ein großer Nachteil von serverseitigen Sprachen wie ASP.NET, PHP, Perl und Konsorten, denn vor allem die günstigen Hoster gestatten keine serverseitige Programmierung. Mit JavaScript ist dies jedoch alles kein Problem. Dank AJAX erlebt JavaScript gerade seinen zweiten Frühling: Jetzt ist es allerhöchste Zeit, in die Programmierung einzusteigen!

In den folgenden Kapiteln finden Sie eine komplette Einführung in die Sprache, stets anhand von praxisnahen Beispielen illustriert. Ich habe versucht, mich bei den Beispielen auf das Wesentliche – nämlich auf die JavaScript-Programmierung – zu konzentrieren. Daher sind die Beispiele grafisch bei weitem nicht ausgefeilt, aber sie erfüllen die gestellten Aufgaben.

Ein Schwerpunkt des Buches ist AJAX: Das Buch versucht, den Begriff zu entschleiern und darzulegen, wie Sie mit wenig Aufwand ebenfalls beeindruckende AJAX-Anwendungen erstellen können. Kapitel 34 schließlich ist eine komplette Sprachreferenz, die Ihnen auch nach der Lektüre des Buches immer wieder als Nachschlagewerk dienen wird.

Des Weiteren möchte ich noch auf den Supportbereich zu allen Büchern von meinem Kollegen Tobias Hauser und/oder mir auf http://www. hauser-wenz.de/support/ hinweisen. Sie finden dort Errata (sobald sie mir bekannt werden) und können dort auch mit mir in Kontakt treten. Nutzen Sie diese Gelegenheit; jede Art von konstruktiver Kritik ist willkommen. Wenn Sie einen Fehler finden, teilen Sie mir diesen bitte mit, damit er in einer weiteren Auflage dieses Buches nicht mehr auftritt. Sie helfen damit auch anderen Lesern.


Rheinwerk Computing

1.1 Die Geschichte von JavaScript  toptop

Gegen Ende des Jahres 1995 stellte die Firma Netscape die neueste Version ihres Internet-Browsers vor. Der Versionssprung von 1.1 auf 2.0 war berechtigt, da solch revolutionäre Dinge wie etwa die Unterstützung von Frames als neues Feature hinzugekommen waren. Unter anderem war auch eine Sprache namens LiveScript eingebaut, mit der man auf HTML-Seiten Einfluss nehmen konnte. Die Syntax dieser Sprache lehnte sich an Java an, und aus marketingtechnischen Gründen wurde die Programmiersprache schließlich in JavaScript umbenannt.

Schon bald begann der Siegeszug dieser Programmiersprache. Zwar war die Implementierung im Browser eher mangelhaft (in der Netscape-Version 2.0 konnte man JavaScript nicht einmal deaktivieren, was zu einem bösen Sicherheitsproblem werden sollte), aber mit der Beta-Version des Netscape Navigator 3 wurde die JavaScript-Version 1.1 vorgestellt, die deutlich mehr Möglichkeiten bot. Microsoft wollte nun auch auf den Zug aufspringen und kündigte an, in Version 3 des Internet Explorers ebenfalls eine Skriptunterstützung anzubieten. Aus lizenzrechtlichen Gründen wurde die Sprache JScript getauft. Von der Syntax her war sie aber mit JavaScript praktisch identisch.

Danach lief ein langes Wettrennen zwischen Netscape und Microsoft, der so genannte Browser-Krieg. Während der Internet Explorer 3 praktisch nur JavaScript 1.0 unterstützte, beherrschte der Internet Explorer 4 schon JavaScript 1.1 – und enthielt einige Features aus dem Sprachschatz von JavaScript 1.2, das mit dem Netscape Navigator 4 eingeführt wurde, der parallel zum »IE4« erschien. Seit dem Netscape Navigator 4.06 gibt es JavaScript in der Version 1.3, die zwar nur rudimentäre Verbesserungen anbietet, sich aber an dem ECMA-262-Standard, ECMAScript, orientiert. Netscape hatte erkannt, dass man auf Standards setzen muss, und behauptete gleichzeitig, dass der Netscape Navigator 4.06 der Browser sei, der der Spezifikation von ECMAScript am nächsten komme. Microsoft wiederum verkleinerte mit dem Internet Explorer 5 den Rückstand weiter, setzte aber inzwischen eher auf andere Standards, wie DOM (Document Object Model). Unter dem Codenamen Mozilla wurde währenddessen die nächste Netscape-Version als Open Source entwickelt. Das heißt, der Sourcecode lag offen, und jeder konnte an der neuen Version mitentwickeln. Nichtsdestotrotz wurde der Löwenanteil der Arbeit von Netscape-Angestellten geleistet; das »Linux-Wunder« funktioniert eben nicht überall!

Im Spätherbst 2000 begannen sich die Ereignisse zu überschlagen. Net-scape geriet unter Druck, da der Internet Explorer 5.5 sowie der Internet Explorer 6, der als Teil des neuen Microsoft-Betriebssystems Windows XP (Codename: Whistler) angeboten wurde, schnell den aktuellen Zwischenstand des Open-Source-Projekts erreichten. Netscape bastelte eine Installationsroutine und bot eben diesen Zwischenstand als Netscape 6 zum Download an (bezeichnenderweise war zu dieser Zeit eine fast identische Version auf der Mozilla-Website mit der Versionsnummer 0.6 als Download zu haben). Dieser Schritt stieß in der Fachwelt auf große Kritik, denn die Version war noch weit davon entfernt, für den Produktiveinsatz zu taugen. Erst die späteren Unterversionen von Netscape 6 und die nächste Version, Netscape 7, sorgten hier für spürbare Besserung. Und – was aus Sicht der Webdesigner viel schlimmer war – die neue Version erwies sich in Sachen JavaScript als nicht abwärtskompatibel, wenn es um »DHTML« ging. So mussten (und müssen immer noch) eine Reihe von Skripten umprogrammiert werden. Doch keine Sorge, denn um eines vorwegzunehmen: In diesem Buch gehen wir ausführlich auf den neuesten Netscape-Browser ein. Die neuen Versionen (Netscape 6 und 7) unterstützen übrigens JavaScript 1.5, das aber nur unwesentliche Änderungen gegenüber den Vorgängerversionen aufweist (es wird eine aktuellere Version von ECMAScript unterstützt). Doch es bedurfte erst eines neuen Namens und eines schlankeren Browsers auf Mozilla-Basis, um dem Internet Explorer wieder kräftig Marktanteile abzunehmen: Firefox heißt die Software, die mittlerweile unangefochtene Nummer zwei auf dem Browsermarkt ist (bei einigen Special-Interest-Seiten sogar auf Nummer 1).

Die Crux bei der Programmierung von Webseiten besteht darin, dass die beiden großen Browserhersteller immer wieder versucht haben, sich dadurch zu übertrumpfen, dass sie immer neue Features in ihre Browser einbauten. Das ist innerhalb des eigenen Mikrokosmos eine gute Sache, aber wenn die Technik inkompatibel zur Konkurrenz ist, schaut etwa die Hälfte der Websurfer (die nämlich den jeweils anderen Browser benutzen) bildlich gesprochen in die Röhre. Keine Firma kann es sich leisten, ein Web-Angebot nur für die halbe Zielgruppe zu erstellen.

In diesem Buch geht es nicht nur um die neuesten Effekte und Kniffe. Vielmehr geht es darum, wie Sie Ihre Zielgruppe erweitern können, indem JavaScript-Programme so gestaltet werden, dass sie von den Benutzern beider Browser und auch von den Benutzern älterer Versionen verwendet werden können. Bei bekannten Fehlern in der Implementierung einzelner Browser werden – soweit möglich – Workarounds angeboten. Ihr Ziel sollte es nicht nur sein, eine technisch eindrucksvolle Seite zu erstellen, sondern auch Ihre Zielgruppe zu erweitern, indem Sie ältere Browser nicht ausschließen oder zumindest vor Fehlermeldungen bewahren. Allerdings ist diese (siebte) Auflage des Buchs die erste, die einen Schlussstrich in Bezug auf ganz alte Browser zieht. Netscape 4 (und früher) sowie Internet Explorer 5.5 und früher haben eine mittlerweile kaum mehr messbare Verbreitung und werden deswegen nicht mehr berücksichtigt.

Es ist ja nicht so, dass nur der Netscape Navigator und der Internet Explorer JavaScript unterstützen. Die Nummer 3 im Browsermarkt, der Opera-Browser, unterstützt JavaScript-Version 1.3, und das sogar recht gut. Der Konqueror-Browser ist ebenfalls fit in JavaScript; da der Apple-Browser Safari auf Konqueror basiert, gilt das natürlich auch hier. Auch der in StarOffice integrierte Webbrowser sowie die Version 3 von Suns HotJava-Browser sind JavaScript-fähig. Diese Browser haben jedoch einen so kleinen Marktanteil, dass sie im Referenzteil nicht extra berücksichtigt werden. Mit umsichtiger Programmierung lassen sich aber auch hier Fehler vermeiden.

 <<   zurück
  
  Zum Katalog
Zum Katalog: JavaScript und AJAX
JavaScript und AJAX
bestellen
 Ihre Meinung?
Wie hat Ihnen das <openbook> gefallen?
Ihre Meinung

 Buchtipps
Zum Katalog: JavaScript






 JavaScript


Zum Katalog: jQuery






 jQuery


Zum Katalog: Einstieg in JavaScript






 Einstieg in JavaScript


Zum Katalog: Responsive Webdesign






 Responsive Webdesign


Zum Katalog: Suchmaschinen-Optimierung






 Suchmaschinen-
 Optimierung


 Shopping
Versandkostenfrei bestellen in Deutschland und Österreich
InfoInfo




Copyright © Rheinwerk Verlag GmbH 2007
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das <openbook> denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


[Rheinwerk Computing]

Galileo Press, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, service@rheinwerk-verlag.de