Wie erkenne ich Opera ...
bernd göbel
- javascript
0 Cheatah0 Bernd Göbel0 Cyx23
0 Cyx230 Maxx
Hallo Forum,
gesucht aber nicht gefunden.
Vieleicht kann mir ja hier jemand helfen.
Wie erkenne ich Opera (der 5er reicht).
Hat jemand eine Idee ?
Bin für jeden Ansatz dankbar.
Das kann er meiner Meinung nach nicht,
dmit könnte man Ihn abfangen wenn er sich als I.E ausgibt.
document.body.scrollTop
Bernd
Hi,
Wie erkenne ich Opera (der 5er reicht).
Gegenfrage: Was bringt Dir dieses Wissen?
Welcher Browser verwendet wird, ist eigentlich[1] unerheblich. Wichtig ist, welche Objekte bekannt sind und welche Methoden unterstützt werden - und das kannst Du browserunabhängig abfragen.
Cheatah
[1] Wobei die JavaScript-Implementierung von Opera möglicherweise ein Argument ist... :-)
Sicher kann ich den Broser danach fragen, aber für den Opera Browser ist
es recht schwierig dies Informationen zu bekommen.
(Habe mir bei opera schon einen Wolf gesucht).
Zwischenzeitlich würde ich aber ganz gerne Opera an ein paar Funktionen
vorbei schicken.
Bernd
Hallo,
function my_browser(){
this.byId= document.getElementById?1:0;
this.byTag = document.getElementsByTagName?1:0;
this.defView = document.defaultView?1:0
this.elFP = document.elementFromPoint?1:0
this.dom = (this.byId && this.byTag)?1:0
this.op50 = (this.byId && !this.byTag && !this.dom)?1:0;
this.op51 = (this.dom && !this.defView && !this.elFP)?1:0
return this;}
var bw=new my_browser();
if (bw.op50){
alert("Opera Browser <= 5.01");}
if (bw.op51){
alert("Opera Browser > 5.01");}
if (!bw.op50 || !bw.op51){
alert("Kein Opera Browser");}
Gruß
Markus
Danke Markus,
das war genau das was ich gesucht habe.
Danke !!!
Bernd
Moin,
if (!bw.op50 || !bw.op51){
^^
muss da nicht ein && hin?
Viele Gruesse,
n.d.p.
Hallo n.d.p.
if (!bw.op50 || !bw.op51){
^^
muss da nicht ein && hin?
ei nadürlich, sorry und Danke
Viele Grüße aus dem heißen Köln
Markus
(der jetzt auch noch Squash spielen geht :-)
Hallo,
Gegenfrage: Was bringt Dir dieses Wissen?
Welcher Browser verwendet wird, ist eigentlich[1] unerheblich. Wichtig ist, welche Objekte bekannt sind und welche Methoden unterstützt werden - und das kannst Du browserunabhängig abfragen.
Cheatah
[1] Wobei die JavaScript-Implementierung von Opera möglicherweise ein Argument ist... :-)
nicht nur dass einige Möglichkeiten bei Javascript und CSS von Opera
fehlen, Opera ist auch immer noch etwas buggy. Sicher, vielleicht hat
Opera bei einigen wenigen Abweichungen vom "Standard" sogar mal recht,
was es aber deswegen nicht einfacher macht.
Gerade deshalb bringt "dieses Wissen" etwas und ist mitunter nötig,
schliesslich ist Opera 5x halbwegs soweit, dass Anpassungen möglich
und sinnvoll sind.
Ärgerlich ist der zusätzliche Aufwand, vor Allem wenn dann später mal
bei Opera6 womöglich unsinnige Sachen in den Seiten stehen.
Ich habe auch schon merkwürdige Dinge bei Netscape unter Linux gesehen,
die ebenfalls nicht mit unterstützten Methoden erfassbar wären, genauso
IE4.5/Mac.
Grüsse
Cyx23
Hi,
da gibt es navigator.appName und navigator.userAgent
wahrscheinlich ist der userAgent hier besser,
und dann nach dem Schema
if(navigator.appName.indexOf("pera")>0)
abfragen (vorher entspr. anpassen)
Grüsse
Cyx23
Hallo Bernd,
Wie erkenne ich Opera (der 5er reicht).
if(window.opera)
alert("opera");
sollte _immer_ funktionieren, auch wenn Opera sich als sonstwas ausgibt.
HTH Maxx