Hallo,
Opera - und insb. andere Browser - kannst Du besser über die Unterstützung von window.opera erkennen.
Aber auch das ist absolut nicht verlässlich, da mittels User-JS im Opera das window.opera-Objekt entfernt werden kann.
Verzeihung, ich weiß beim besten Willen nicht, was dieser spitzfindige Einwand soll.
»Absolut nicht verlässlich«? Wenn jemand seinen Browser kaputtkonfiguriert, kann die Seite nicht damit rechnen, dass der Browser irgendwie konsistent reagiert. Was ist das für eine Erkenntnis? Die macht einen kein bisschen schlauer. Genausowenig eröffnet sie irgendwelche alternative Handlungsmöglichkeiten. Man kann sie getrost vergessen.
Freilich, Browserweichen sind per se problematisch, und es versteht sich von selbst, dass sie nicht hundert Prozent verlässlich sind. Das weiß man aber auch, ohne das Totschlagargument »wenn ich will, kann ich meinen Browser dermaßen kaputtkonfigurieren, dass man es niemals schafft, etwaigem Fehlverhalten durch Browsererkennungen zu begegnen« zu bringen. Mit dem Argument kann man auch »Funktionsweichen« in JavaScript totschlagen, die direkter abfragen, ob ein Fehler existiert. Es ist aber nun einmal ein Fakt, dass es etliche Browserfehler gibt, die man mit Hacks umgehen kann und zuweilen muss, während diese Hacks nicht direkt, sondern nur über den Browsernamen in Erfahrungen bringen können, ob der Fehler auftritt.
Das Nachdenken über das sinnlose Kaputtkonfigurieren von fehlerhaften und daher Hack-bedürftigen Browsern führt daher zu nichts und führt einem nichtmal das wirkliche Dilemma vor Augen. Wenn man also irgendwann genötigt ist, eine Browserweiche zu verwenden und einem nichts übrig bleibt, als window.opera abzufragen, dann soll man es in Gottes Namen auch - und muss notwendigerweise diejenigen, die ihren Browser mutwillig willkürlich reagieren lassen, ignorieren. Beziehungsweise, wenn diejenigen dann den Browserfehler zu sehen bekommen, weil der Hack nicht greift, sind auch selbst Schuld, wenn sie dem Seitenautor gleich in zweifacher Hinsicht Stöcke zwischen die Beine werfen.
Kopfschüttelnde Grüße,
Mathias