Web-Seiten lassen sich nicht für alle möglichen Browser gleichermaßen gut optimieren. Für den anspruchsvollen Seitengestalter ist es deshalb wichtig, den Browsertyp festzustellen um innerhalb der Präsentation reagieren zu können. Teile der Präsentation werden in Varianten angeboten. Die Auswahl wird von JavaScript vorgenommen, so daß nicht der User mit Fragen genervt werden muß.
Das Objekt, welches die Frage nach dem Browser emöglicht,heißt navigator. Die erfragbaren Eigenschaftender Übersicht, die rechte Spalte zeigt die aktuellenErgebnisse Ihres Browsers:
Eigenschaften | | |
appCodeName | interner Kurzname des Browsers |
|
appName | offizieller Name des Browsers |
|
appVersion | Browser-Version |
|
cookieEnabled |
Hat der User das Setzen von Cookies erlaubt? |
|
language |
Sprache des Browsers |
|
platform |
Plattform, auf der der Browser läuft |
|
userAgent |
HTTP-Identifikation des Browsers |
|
Methode |
|
|
javaEnabled() |
Java-Verfügbarkeit überprüfen |
|
Die Anzeige der Browserergebnisse wurde mit Einträgen
der folgenden Art in die jeweilige Zelle erreicht:
<center><script>document.write(navigator.appCodeName)</script></center> |
Welche Plugins sind verfügbar?
Dies ist kein Anfängerproblem!
Plugins sind die Hilfsprogramme, von denen Ihr Browser einige
zur Verfügung hat. Man kann die Plugins des eigenen
Browsers über eine Menü-Option anzeigen lassen.
Beim Netscape Navigator können diese Informationen
auch von JavaScript erfragt werden. Das ist von Vorteil,
wenn man für seine Präsentation eines der Plugins
benötigt. Fehlt das entscheidende Plugin, kann man
auf das Fehlen hinweisen und ggf. eine Downloadadresse anbieten.
Schließlich kann man beispielsweise das langwierige
Laden einer Musikdatei unterdrücken.
Zum Erfragen nutzt man das Objekt plugin, welches
ein Unterobjekt von navigator ist. Die Konsequenz
des "Unterobjektseins" ist, daß nach navigator.plugin[#].eigenschaft
zu fragen ist. Die eckige Klammer soll andeuten, daß
intern ein plugin-Array existiert, welches die gewünschten
Informationen enthält, auf das zugegriffen wird.
Die verfügbaren Eigenschaften sind:
description |
Beschreibung eines Plugins |
filename |
Dateiname eines Plugins |
length |
Anzahl Plugins |
name |
Produktname eines Plugins |
Zur Nutzung spare ich mir diesmal ein eigenes Beispiel.
Die vorhandenen plugins Ihres Rechners werden mit dem folgenden
Script angezeigt:
<script language="JavaScript">
document.write("<table cellspacing=2
cellpadding=5 width='100%' bgcolor='#ccffff' >");
for(i=0; i<navigator.plugins.length;
i++)
{
document.write("<tr>");
document.write("<td>"
+ navigator.plugins[i].name.fontsize(2) + "</td>");
document.write("<td>"
+ navigator.plugins[i].description.fontsize(2) + "</td>");
document.write("<td>"
+ navigator.plugins[i].filename.fontsize(2) + "</td>");
document.write("</tr>");
}
document.write("</table>");
</script> |
Wenn unten nichts zu sehen ist, Pech.
Welche Datentypen kennt der Browser?
Das folgende Thema ist der Vollständigkeit halber
aufgenommen worden (und weil es so schön funktioniert!)
Datentypen meint hier die Mime-Typen, von denen in HTML
schon so etwas wie "text/html" vorkam. Datentypen,
in denen man Informationen mitteilen will, muß der
Browser kennen, er muß evtl. dafür speziell erforderliche
Plugins zur Verfügung haben. Es gibt ein Unterobjekt
"mimeTypes" von "navigator", mit dem man
zunächst mal erfragen kann, welche Typen dem eigenen
(Netscape)- Browser bekannt sind. Andere Browser helfen
im Moment hier nicht. Die Eigenschaften von mimeTypes:
description |
Beschreibung des Mime-Typs |
enabledPlugin |
Plugin ansprechbar |
length |
Anzahl der verarbeitbaren Mime-Typen |
suffixes |
Dateiendungen |
type |
Mime-Type |
Beispiel für Aufrufe des Objekts:
<script language="JavaScript">
document.write("<table cellspacing=2
cellpadding=5 width='100%' bgcolor='#ccffff'>");
for(i=0; i<navigator.mimeTypes.length;
i++)
{
document.write("<tr>");
document.write("<td>"
+ navigator.mimeTypes[i].type.fontsize(2) + "</td>");
document.write("<td>"
+ navigator.mimeTypes[i].suffixes.fontsize(2) + "</td>");
document.write("<td>"
+ navigator.mimeTypes[i].description.fontsize(2) + "</td>");
document.write("<td>"
+ navigator.mimeTypes[i].enabledPlugin + "</td>");
document.write("</tr>");
}
document.write("</table>");
</script> |
Es folgt eine Tabelle, die wenn sie folgt, evtl. durch
ihre Länge überrascht.
|