Erfolgreich JavaScript lernen – Auszug

3 Verschiedene Browser

Zwar hat man in einigen
IDEs zur Erstellung von Webseiten bzw. JavaScripts einen
Vorschaumodus zur Verfügung. Aber dabei wird in der Regel
indirekt auf ein anderes Programm zurückgegriffen. Zum Ausführen
von JavaScripts und der Darstellung von Webseiten benötigen Sie
daher einen Webbrowser (oder kurz
Browser), mit dem Sie auch im WWW surfen9.

Sie können nun als
reiner Anwender im Web im Grunde einen beliebigen Webbrowser
verwenden. Aber Sie sollten als Webseitenersteller auf jeden Fall
mehrere Browser zur Verfügung haben. Denn leider gilt, dass man
Web-Applikationen wegen der teils hohen Abweichungen in der
Darstellung und Funktionalität unbedingt in allen relevanten
Browsern testen muss. Und in der Regel wissen Sie ja nicht, mit
welchen Browsern Ihre Besucher auf Ihren Webseiten vorbeikommen.
Deshalb sollten Sie zu einem effektiven Test einer Web-Applikation
immer mehrere Browser heranziehen.

Unabdingbar sind der
Firefox mit dessen Verwandten wie der Netscape Navigator oder Mozilla
und Chrome bzw. Safari (MacOS), denn diese beiden Browserfraktionen
führen aktuell in Deutschland die meisten Statistiken über
die Verbreitung bei Anwendern an. Und natürlich benötigen
Sie den Internet Explorer – nicht zuletzt wegen dessen extrem
abweichenden Verhaltensweisen und – in den alten Versionen – dessen
extrem schlechter Performance. Darüber hinaus empfehle ich den
Opera-Browser, denn dieser ist meist sehr konform mit offiziellen
Standards und bei bestimmten Zielgruppen sehr beliebt. Und spezielle
Linux-Browser wie der Konqueror sind auch gute Testumgebungen.

Wenn Sie interessiert wie
performant der eigene Webbrowser10
wirklich ist, gibt es einige Testseite im Web, die das demonstrieren.
Dabei geht es nicht um die Datenübertragung zwischen Server und
Client. Das ist im Wesentlichen eine Frage der Datenanbindung. Aber
bereits beim Rendern11
von HTML-Seiten und CSS-Formatierungen zeigen sich Unterschiede
zwischen Browsern. Nur sind diese Unterschiede noch nicht so
gravierend, dass sie sich fatal für das Verhalten der
Webapplikation auswirken. Allerdings sind bei den neuen Features von
HTML5 aktuell ziemlich große Abweichungen zu bemerken. Und noch
schlimmer sieht es aus, wenn man die JavaScript-Verarbeitung mit
einbezieht. Hier weisen die Webbrowser riesengroße Unterschiede
auf, wie sich dynamische RAI verhalten und wie träge oder fix
eine Applikation wirklich beim Anwender ist.

Als Beispiel sei nur
exemplarisch der Browser-Benchmark von Futuremark genannt, der auch
Browserstatistiken liefert und der kostenlos online über
http://service.futuremark.com/peacekeeper/index.action
aufgerufen werden kann. In der Browserstatistik des Test taucht
übrigens der Internet Explorer gar nicht mehr auf, während
der Anteil des Opera überraschend hoch ist. Es macht sehr viel
Sinn, wenn man die Statistiken seines Providers oder aber die von der
eigenen Web-Applikation geführten Statistiken auswertet, um die
für eine spezifische Webpräsenz wirklich relevanten Browser
zu bestimmen. Bei den Besuchern meiner Webpräsenzen lässt
sich beispielsweise ziemlich deutlich eine Konzentration auf
Mozilla/Firefox- und Chrome/Safari-Browser beobachten, während
der Internet Explorer kaum häufiger als der Opera auftaucht (was
sich mit den Statistiken von Futuremark deckt, aber bei anderen
Besucherprofilen ganz sicher abweicht).

Der hier genannte Test
dauert online etwa 5 Minuten12.
Es ist besonders interessant, gerade die älteren Internet
Explorer bis zur Version 8 zu testen. Interessanter Weise schneiden
der Safari und Chrome bei den Tests meist am besten ab (sie sind auch
verwandt). Der Opera-Browser ist auch sehr gut dabei13,
während der derzeit populärste Browser – Firefox – in der
Regel gar nicht im Topbereich zu finden ist. Klare Verlierer sind
aber die alten Versionen vom Internet Explorer, während die
Version 9 recht gut abschneidet. Man kann grundsätzlich
diskutieren, wie aussagekräftig die Ergebnisse solcher
Benchmark-Tests sind. Zumal sich die Performance mit jedem kleinen
Update eines Browsers wieder ändern kann und es sich bei jedem
Test mehr oder weniger um eine Momentaufnahme handelt. Aber ein guter
Anhaltspunkt über die Performance von einem bestimmten
Browsertyp wird da schon geliefert.

Mein Fazit solch eines
Tests ist jetzt vielleicht etwas seltsam. Aber der Performance-Test
zeigt deutlich die Bedeutung eines älteren Internet Explorers
wie der Version 8 oder gar noch älter als Testbrowser. Nur mit
so einem unperformanten Browser kann man recht einfach testen, wie
sich eine dynamische RIA im ungünstigsten
Fall
anfühlt. Und natürlich sind dann noch die
fehlende Unterstützung neuer Features zu beachten – auch hier
muss man testen, was dann passiert.

Nun gibt es aber von
jedem Browser verschiedene Versionen und auch zwischen diesen gibt es
oft gravierende Abweichungen. Insbesondere verhalten sich alte
Internet Explorer ganz anders wie die Versionen ab Nummer 9, die so
langsam standardkonform werden. Von daher gehören für
Web-Designer und Web-Programmierer ältere sowie die derzeit
topaktuellen Browser zur Pflichtausstattung.

Im Internet Explorer der
Versionen 8 und 9 können Sie einen so genannten
Kompatibilitätsmodus einstellen. Damit kann sich der Browser wie
seine standardinkompatiblen Vorgänger verhalten, um dafür
optimierte Seiten korrekt darstellen zu können. Und Sie können
testen, wie sich eine Webseite unter diesen Browserversionen verhält.

Dennoch ist es sinnvoller
und einfacher, dass Sie unter eigenen Testumgebungen explizit ältere
Versionen des Internet Explorers verfügbar haben (die Version 8
und sogar die Version 7), denn zu 100 Prozent simuliert der
Kompatibilitätsmodus die alten Verhaltensweisen doch nicht. Und
selbst die Versionsnummer 6 ist in der Praxis noch im Einsatz, wie
ich sogar noch in den Jahren 2010/2011 bei mehreren Firmenschulungen14
mit Schaudern feststellen musste. Und wenn Sie nicht in der
glücklichen Lange sind und diese Altversionen des Internet
Explorers ignorieren können, ist ein expliziter Test
unvermeidlich.

Vielfach glauben
Anwender, dass man immer nur einen Browser auf einem Computer
installieren kann. Das ist wie angedeutet nicht so. Sie können
parallel verschiedene Browser auf einem einzigen Computer
installieren. Dabei können Sie meist sogar verschiedene
Versionen des gleichen Browsers auf einem Rechner verwenden. Nur beim
Internet Explorer geht das dummer Weise nicht. Hier kollidieren
mehrere Versionen des Internet Explorers auf einem Rechner, da dieser
sich tief in das Betriebssystem verankert. Um mehrere Versionen des
Internet Explorers verwenden zu können, benötigen Sie
entweder mehrere Windows-Installationen oder aber Sie verwenden eine
Virtualisierungslösung wie VMWare (http://www.vmware.com/de)
oder VirtualBox (http://www.virtualbox.org/),
in der Sie ein anderes Betriebssystem innerhalb Ihres Hauptsystems
simulieren und dann dort verschiedene Browserversionen verfügbar
machen15.
Ideal ist natürlich, wenn ihnen ein (kleines) Netzwerk aus
mehreren Rechnern mit verschiedenen Testsystemen zur Verfügung
steht. Und wenn weder das Eine noch das Andere geht, gibt es
mittlerweile eine Reihe von Tools, mit denen Sie auch auf einem
Rechner direkt mehrere Versionen des Internet Explorers installieren
können. Etwa die Internet Explorer
Collection
, die von der Versionsnummer 1.0 bis 8.0 alles
zur Verfügung stellt, was es an veralteten Versionen des
Internet Explorers gibt
(http://finalbuilds.edskes.net/iecollection.htm).

Als Alternativen sollen
noch das Internet Explorer 6 Application Compatibility VPC Image,
Multiple_IE oder der IE-Tester erwähnt werden. Diese Tools
lassen sich über Suchmaschinen leicht finden.