Utz: Browser-Weiche/Browser-Abfrage

Beitrag lesen

Hallo Vladi,

Du hast zwei Optionen: zu versuchen, den Namen des Browsers abzufragen, oder nach bestimmten JavaScript-Objekten zu fragen, die nur bestimmte Browser können. Das erste ist nicht zu empfehlen, da es relativ leicht gefälscht werden kann (bzw. im Falle Opera schon in der Voreinstellung gefälscht ist) - also das zweite. Hier ein Beispiel:

if (document.all && !window.opera) {
  location.replace("ie_seite.htm");
  }
else {
  location.replace("andere_seite.htm")
  }

Mit "if (...)" fragst Du eine Bedingung ab, hier: existiert das Objekt document.all. Das existiert in alle IE ab Version 4 plus in Operas, die sich als IE ausgeben. Daher der zweite Teil der Abfrage: "&&" ist die logische Und-Verknüpfung, das Objekt window.opera existiert nur in Operas, das "!" verneint das wieder, in dt. Prosa also: "Wenn das Objekt document.all existiert und gleichzeitig das Objekt window.opera nicht existiert, dann.."

location.replace() führt dann auf die Folgeseite weiter (auch location.href denkbar, sieh in SelfHTML zum Unterschied nach, wenn Du ihn nicht weißt). "else" bezieht sich auf alle anderen Fälle, auch hier dann wieder ein location.replace() - fertig.

Grüße,

Utz