Geschrieben von: Christian Koller
Kategorie: Komponenten
This printed page brought to you by AlphaSierraPapa
Wenn sie ihre Internetseiten immer auf verschiedenen Browsern (wie Internet Explorer oder Netscape Communicator) testen, so werden sie feststellen, dass unterschiedliche Browser bestimmte HTML Elemente unterschiedlich darstellen. Wenn sie nun unter Internet Explorer oder Netscape das selbe Ergebnis haben wollen, müssen sie zu jedem Browser eine eigene Version ihrer Internetseite schicken. Doch wie können sie erkennen, welcher Browser gerade zum Aufruf der Seite benutzt wird?
Eine Möglichkeit besteht darin, die unter IIS (oder PWS) mitgelieferte Microsoft Browser Capability Component zu benutzen. Diese ist jedoch ungenau und nur sehr schwer auf dem neuesten Stand zu halten.
Von der Firma CyScape gibt es die Server-Komponente BrowserHawk 2000, die in der Lage ist, automatisch die aktuellsten Browserdefinitionsdateien zu laden und daher immer auf dem neuesten Stand ist was die verschiedenen Browserversionen betrifft.
Nicht nur, dass BrowserHawk sehr genaue und detailierte Informationen über den augenblicklich zugreifenden Browser liefert, es verfügt ausserdem über die Möglichkeit die Downloadgeschwindigkeit der Internetverbindung zu prüfen, kann automatisch testen ob Cookies auf dem Browser verfügbar sind (wichtig beim Einsatz des Session Objektes unter ASP), oder erkennt welche Version des Macromedia Flash Plug-In installiert ist.
Nachdem sie BrowserHawk downgeloadet und installiert haben, können sie die Komponente in ihren ASP Seiten wie folgt einsetzen (ausführbares Beispiel):
<% Set BrowserHawk = Server.CreateObject("cyScape.browserObj") ' Browsereigenschaften auslesen If BrowserHawk.Browser = "Netscape" Then ' Hier den HTML-Code für Netscape bereitstellen %> ... <% ElseIf BrowserHawk.Browser = "IE" Then ' HTML Code für Internet Explorer %> ... <% Else ' Andere Browser %> ... <% End If Set BrowserHawk = Nothing %>
Die Art des Browsers ist nur eine der vielen Browserattribute die ihnen BrowserHawk liefert.
Unter ASP stellt ihnen das BrowserHawk Objekt (ProgID "cyScape.browserObj") unter anderem die folgenden Eigenschaften zur Verfügung:
ActiveXControls | Gibt einen Boolean Wert zurück, ob der Browser ActiveX Controls unterstützt |
AOL | Boolean Wert ob der Browser von AOL stammt |
BackgroundSounds | Ein Boolean Wert, der angibt ob der Browser Hintergrundmusik spielen kann |
Browser | Gibt den gebräuchlichen Namen des Browsers zurück, zum Beispiel "IE" oder "Netscape" |
CDF | Ein Boolean Wert, ob der Browser das Channel Definition Format unterstützt, um sich bei Internet Kanälen registrieren zu können |
ConnectionSpeed | Nach Aufruf der SpeedDetector Methode benutzbar. Gibt die Geschwindigkeit der Internetverbindung an |
Cookies | Gibt einen Boolean Wert zurück, ob der Browser prinzipiell Cookies unterstützt, auch wenn sie ausgeschalten sein können. |
CookiesEnabled | Gibt an, ob der Browser Cookies annimmt, erst nach Aufruf der CookieDetector Methode zu benutzen |
DHTML | Erkennt, ob der Browser DHTML unterstützt |
FileUpLoad | Prüft ob der Browser in der Lage ist einen Datei Upload durchzuführen. Gibt die Werte "Yes" (Ja), "Maybe" (Vielleicht) oder "No" (Nein) zurück |
Frames | Boolean Wert ob der Browser Frames unterstützt |
IPAddr | Gibt die IP Adresse des Browsers zurück |
JavaApplets | Ein Boolean-Wert, der angibt, ob Java(tm) Applets unterstützt werden |
JavaEnabled | Ein Boolean-Wert, der angibt, ob Java(tm) Applets tatsächlich ausgeführt werden Diese Eigenschaft wird nur von der Professional oder Enterprise Edition von BrowserHawk unterstützt. Vor dem Aufruf der JavaEnabled Eigenschaft muss zuerst die GetExtProperties Methode aufgerufen werden |
JavaScript | Gibt an, ob der Browser prinzipiell JavaScript unterstützt, egal, ob die Ausführung von JavaScript ein- oder abgeschalten ist |
JavaScriptEnabled | Gibt an, ob JavaScript tatsächlich ausgeführt werden kann. Diese Eigenschaft wird nur von der Professional oder Enterprise Edition von BrowserHawk unterstützt. Vor dem Aufruf der JavaScriptEnabled Eigenschaft muss zuerst die GetExtProperties Methode aufgerufen werden |
JavaScriptVer | Liefert die Version von JavaScript des Browsers retour |
Plugin_Director | Prüft ob das Macromedia Director Plug-In installiert ist und liefert
die folgenden Werte zurück: 0: Das Macromedia Director Plug-In ist nicht installiert 1: Das Macromedia Director Plug-In ist installiert -1: Es ist nicht möglich zu bestimmen ob das Plug-In installiert ist. Achtung: Sie müssen vor dem Gebrauch dieser Eigenschaft die GetExtProperties Methode aufrufen |
Plugin_Flash | Prüft ob das Macromedia Flash Plug-In installiert ist und liefert
die folgenden Werte zurück: 0: Das Macromedia Flash Plug-In ist nicht installiert -1: Es ist nicht möglich zu bestimmen ob das Plug-In installiert ist. Anderer Wert: Gibt dieFlash Versionsnummer an. Achtung: Sie müssen vor dem Gebrauch dieser Eigenschaft die GetExtProperties Methode aufrufen |
SSL | Zurückgegeben wird ein Boolean Wert der angibt, ob das Secure Sockets Layer (SSL) Protocol vom Browser unterstützt wird |
StyleSheets | Gibt an, ob Cascading Style Sheets (CSS) unterstützt werden |
Tables | Liefert einen Boolean-Wert der anzeigt, ob der Browser HTML Tabellen darstellen kann |
VBScript | Erlaubt festzustellen, ob der Browser VBScript unterstützt |
Version | Gibt die Versionsnummer des Browsers (z.B. 4.01) zurück |
XML | Retourniert einen Boolean Wert, der angibt ob der Browser XML (Extended Markup Language) unterstützt |
Das BrowserHawk Objekt erlaubt ausserdem den Aufruf der folgenden Methoden:
CookieDetector | Testet ob der Browser Cookies unterstützt und stellt das Testergebnis in der BrowserHawk Eigenschaft CookiesEnabled zur Verfügung |
GetExtProperties | Stellt dem BrowserHawk Plug-In spezielle Werte zur Verfügung, die zur Bestimmung der Eigenschaften JavaEnabled, JavaScriptEnabled, Plugin_Flash, Plugin_Director, Height, Width, HeightAvail, und WidthAvail benötigt werden. Nur in der Professional oder Enterprise Edition von BrowserHawk verfügbar |
ResolveIP | Gibt einen Host Namen des Browsers oder einer angegebenen IP Adresse zurück |
SpeedDetector | Ihr Aufruf erlaubt die Bestimmung der Verbindungsgeschwindigkeit über die ConnectionSpeed Eigenschaft. Nur in der Professional oder Enterprise Edition von BrowserHawk verfügbar |
Im nächsten Artikel über BrowserHawk 2000 sehen sie anhand detaillierter Beispiele, wie man bestimmt ob der Browser Cookies annimmt, ob JavaScript aktiviert ist, und wie hoch die Verbindungsgeschwindigkeit zwischen Server und Browser im Augenblick ist.
This printed page brought to you by AlphaSierraPapa
Einfacher Test, ob der Browser Cookies annimmt
http:/www.aspheute.com/artikel/20000907.htm
Farbauswahl in HTML Formularen
http:/www.aspheute.com/artikel/20010222.htm
Flash Detection ohne Komponente
http:/www.aspheute.com/artikel/20020320.htm
Flash Plug-In Erkennung
http:/www.aspheute.com/artikel/20000411.htm
Messen der Verbindungsgeschwindigkeit
http:/www.aspheute.com/artikel/20000414.htm
Prüfen ob ein Browser Cookies annimmt
http:/www.aspheute.com/artikel/20000412.htm
CyScape
http://www.CyScape.com
Demoversion von BrowserHawk
http://www.browserhawk.com/products/bhawk/download.asp
©2000-2006 AspHeute.com
Alle Rechte vorbehalten. Der Inhalt dieser Seiten ist urheberrechtlich geschützt.
Eine Übernahme von Texten (auch nur auszugsweise) oder Graphiken bedarf unserer schriftlichen Zustimmung.