Rheinwerk Computing < openbook > Rheinwerk Computing - Professionelle Bücher. Auch für Einsteiger.
Professionelle Bücher. Auch für Einsteiger.

 <<   zurück
JavaScript und AJAX von Christian Wenz
Das umfassende Handbuch
Buch: JavaScript und AJAX

JavaScript und AJAX
839 S., mit DVD, 39,90 Euro
Rheinwerk Computing
ISBN 3-89842-859-1
gp Kapitel 7 Browserinformationen
  gp 7.1 Browser-Erkennung
  gp 7.2 Weiterleitung


Rheinwerk Computing

7.2 Weiterleitung  toptop

Alle Angaben zur URL der aktuellen Seite sind im location-Objekt gespeichert, das wiederum ein Unterobjekt des window-Objekts ist. Das window-Objekt kennen Sie ja bereits ein wenig, beispielsweise von window.alert(). Man greift also auf das location-Objekt mit window.location zu. Das window-Objekt ist jedoch das Standardobjekt unter JavaScript, der Name kann also weggelassen werden. Ein einfaches location (bzw. alert()) reicht zum Aufruf aus.

Das location-Objekt hat mehrere Eigenschaften und Methoden. Zunächst ist für Sie die Eigenschaft href interessant, die die gesamte URL enthält. Ab Netscape Navigator 2 bzw. Internet Explorer 4 erhält man diese auch, wenn man direkt auf location zugreift, aber einige Uralt-Browser fallen mal wieder aus der Reihe. Auch wenn das mittlerweile niemanden mehr kümmert, verwenden die meisten JavaScript-Programmierer aus Gründen der Gewohnheit seit jeher immer location.href.

Das war auch schon alles, was wissenswert ist. Der folgende Code zeigt noch einmal exemplarisch auf, wie verschiedene Browser auf verschiedene Seiten umgeleitet werden. Achten Sie darauf, wie verschachtelte if-Anweisungen vermieden werden: Wenn location.href mit einem neuen Wert besetzt wird, wird nämlich die Ausführung des Skripts sofort beendet.

var ua = navigator.userAgent.toLowerCase();
var mozillabrowser = (ua.indexOf("gecko/") != –1);
var iebrowser = (ua.indexOf("msie") > –1 && ua.indexOf("opera") == –1);
var operabrowser = (ua.indexOf("opera") > –1);
var av = navigator.appVersion;
var version = av.substring(0, av.indexOf(" ")) *1;
var version2 = av.substring(0, av.indexOf(".")) *1;
if (mozillabrowser || operabrowser)
   var versionsnummer = version2;
else if (iebrowser){
   if (version2==4 && ua.indexOf("msie 5") == –1 && ua.indexOf("msie 6") == –1 && ua.indexOf("msie 7") == –1) {
      var versionsnummer = 4;
   } else if (version2==4 && ua.indexOf("msie 5") > –1) {
      var versionsnummer = 5;
   } else if (version2==4 && ua.indexOf("msie 6")>-1) {
      var versionsnummer = 6;
   } else if (version2==4 && ua.indexOf("msie 7")>-1) {
      var versionsnummer = 7;
  }
}
//Weiterleitung
if (mozillabrowser && versionsnummer <= 2) {
   location.href="uralt.html";
}
if (mozillabrowser && versionsnummer > 4) {
   location.href="mozilla.html";
}
if (iebrowser && versionsnummer < 6) {
   location.href="alter-ie.html";
}
if (iebrowser && versionsnummer == 6) {
   location.href="ie6.html";
}
if (iebrowser && versionsnummer == 7) {
   location.href="ie7.html";
}
if (operabrowser) {
   location.href="opera.html";
}

 

 <<   zurück
  
  Zum Katalog
Neuauflage: JavaScript
Neuauflage: JavaScript
bestellen
 Ihre Meinung?
Wie hat Ihnen das <openbook> gefallen?
Ihre Meinung

 Buchtipps
Zum Katalog: jQuery






 jQuery


Zum Katalog: Einstieg in JavaScript






 Einstieg in JavaScript


Zum Katalog: Responsive Webdesign






 Responsive Webdesign


Zum Katalog: Suchmaschinen-Optimierung






 Suchmaschinen-
 Optimierung


 Shopping
Versandkostenfrei bestellen in Deutschland und Österreich
InfoInfo




Copyright © Rheinwerk Verlag GmbH 2007
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das <openbook> denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


Nutzungsbestimmungen | Datenschutz | Impressum

Galileo Press, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, service@rheinwerk-verlag.de