Per JavaScript zwischen MSIE5.5 und Opera5 unterscheiden
MaxSmily
- javascript
Hi,
ich möchte ein Javascript so anpassen, daß es jeweils eigene Anweisungen für IExplorer und Opera ausführt, da die beiden Browser bestimmte Javascript-Ereignisse verschieden ausführen. (Die anderen Browser ingorieren wir für diese Frage einfach mal).
Die Aufgabe ist einfach, dachte ich mir. Wofür gibt es denn die Javascript-Anweisungen 'navigator.appName', 'navigator.appVersion' und 'navigator.appCodeName'?
Einfach mal in Opera aufgerufen, doch was müssen meine trüben Augen sehen?
Opera behauptet: "Mein appName ist -> Microsoft Internet Explorer"
und "Meine appVersion ist -> 4.0 (compatible; MSIE 5.0; Windows 98)"
und "Mein appCodeName ist -> Mozilla"
Das wird doch nicht so einfach, dachte ich mir dann.
Max
Hallo,
verwende zur Abfrage einfach das folgende Script:
if (navigator.userAgent.indexOf("Opera")!==-1) opera=1
Gruß Henry
Hallo Max,
[...]
Opera kann sich bekanntlich maskieren, findest Du in der dt. Version
unter Datei -> Einstellungen -> Verbindungen -> Browser-Identifika-
tion.
In der aktuellen 5.11 Version ist da möglich:
Als Opera identifizieren lassen
navigator.userAgent Opera/5.11 (Windows ME; U) [de]
navigator.appCodeName Mozilla
navigator.appVersion 5.11 (Windows ME; U)
navigator.appName Opera
navigator.language de
navigator.platform Win32
Als Mozilla/Netscape 5.0 ausgeben
navigator.userAgent Mozilla/5.0 (Windows ME; U) Opera 5.11 [de]
navigator.appCodeName Mozilla
navigator.appVersion 5.0 (Windows ME; U)
navigator.appName Opera
navigator.language de
navigator.platform Win32
Als Mozilla/Netscape 4.76 ausgeben
navigator.userAgent Mozilla/4.76 (Windows ME; U) Opera 5.11 [de]
navigator.appCodeName Mozilla
navigator.appVersion 4.76 (Windows ME; U)
navigator.appName Opera
navigator.language de
navigator.platform Win32
Als Mozilla/Netscape 3.0 ausgeben
navigator.userAgent Mozilla/3.0 (Windows ME; U) Opera 5.11 [de]
navigator.appCodeName Mozilla
navigator.appVersion 3.0 (Windows ME; U)
navigator.appName Opera
navigator.language de
navigator.platform Win32
Als Internet Explorer 5.0 ausgeben
navigator.userAgent Mozilla/4.0 (compatible; MSIE 5.0; Windows ME) Opera 5.11 [de]
navigator.appCodeName Mozilla
navigator.appVersion 4.0 (compatible; MSIE 5.0; Windows ME)
navigator.appName Opera
navigator.language de
navigator.platform Win32
Ermittelt wurden diese Angaben mit der dt. Opera-Version und der
Millenium Edition eines bekannten Microsoft-Spieles.
http://netz-notizen.de/javascript/tipps/navigator_ermitteln.htm
Viele Grüße aus Dresden,
Stefan Einspender
Danke! Wieder was gelernt!
Max
Hallo Stefan,
bei mir sieht es etwas anders aus:
Das Opera bei der Einstellung IE 5 als navigator.appName den Microsoft Internet Explorer und nicht Opera ausgibt, entspricht auch meinen bisherigen Erfahrungen und erscheint auch irendwie logisch. Damit ist aus meiner Sicht nur die Abfrage von navigator.userAgent zur eindeutigen Identifizierung des Opera geeignet.
Gruß Henry
Hallo
scheinbar muß man den Opera neu starten, damit er es korrekt anzeigt,
deshalb hier nochmal alle Angaben:
Als Opera identifizieren lassen
navigator.userAgent Opera/5.11 (Windows ME; U) [de]
navigator.appCodeName Mozilla
navigator.appVersion 5.11 (Windows ME; U)
navigator.appName Opera
navigator.language de
navigator.platform Win32
Der Browser unterstützt
JavaScript
JavaScript1.1
JavaScript1.2
JavaScript1.3
Server: Opera/5.11 (Windows ME; U) [de]
Als Mozilla/Netscape 5.0 ausgeben
navigator.userAgent Mozilla/5.0 (Windows ME; U) Opera 5.11 [de]
navigator.appCodeName Mozilla
navigator.appVersion 5.0 (Windows ME; U)
navigator.appName Netscape
navigator.language de
navigator.platform Win32
Der Browser unterstützt
JavaScript
JavaScript1.1
JavaScript1.2
JavaScript1.3
Server: Mozilla/5.0 (Windows ME; U) Opera 5.11 [de]
Als Mozilla/Netscape 4.76 ausgeben
navigator.userAgent Mozilla/4.76 (Windows ME; U) Opera 5.11 [de]
navigator.appCodeName Mozilla
navigator.appVersion 4.76 (Windows ME; U)
navigator.appName Netscape
navigator.language de
navigator.platform Win32
Der Browser unterstützt
JavaScript
JavaScript1.1
JavaScript1.2
JavaScript1.3
Server: Mozilla/4.76 (Windows ME; U) Opera 5.11 [de]
Als Mozilla/Netscape 3.0 ausgeben
navigator.userAgent Mozilla/3.0 (Windows ME; U) Opera 5.11 [de]
navigator.appCodeName Mozilla
navigator.appVersion 3.0 (Windows ME; U)
navigator.appName Netscape
navigator.language de
navigator.platform Win32
Der Browser unterstützt
JavaScript
JavaScript1.1
JavaScript1.2
JavaScript1.3
Server´: Mozilla/3.0 (Windows ME; U) Opera 5.11 [de]
Als Internet Explorer 5.0 ausgeben
navigator.userAgent Mozilla/4.0 (compatible; MSIE 5.0; Windows ME) Opera 5.11 [de]
navigator.appCodeName Mozilla
navigator.appVersion 4.0 (compatible; MSIE 5.0; Windows ME)
navigator.appName Microsoft Internet Explorer
navigator.language de
navigator.platform Win32
Der Browser unterstützt
JavaScript
JavaScript1.1
JavaScript1.2
JavaScript1.3
Server: Mozilla/4.0 (compatible; MSIE 5.0; Windows ME) Opera 5.11 [de]
Ich bitte, diesen Lapsus zu entschuldigen, danke an Henry für den
Hinweis :)
Die Werte wurden auf den beiden folgenden Seiten ermittelt:
http://netz-notizen.de/javascript/tipps/navigator_ermitteln.htm
http://www.perinet.de/noch/info-x.shtml
Viele Grüße aus Dresden,
Stefan Einspender