Danushka: Weiterleitung nach Browser

Hallo miteinander
Ich habe folgendes Problem, ich habe eine Seite, die nur mit IE Funzt, nun will ich für Netscape & Opera Nutzer eigenständige Alternativseiten machen, dazu möchte ich ein Startbild der Page machen, das je nach dem weiterleitet.
Mit Netscape und Internet Explorer-kennung gibts kein Problem, da ich dass ja mit navigator.appName auslesen kann, jedoch gibt mir der Opera auch Microsoft Internet Explorer aus
wie kann ich das Problem lösen?

Danushka

  1. Hallo miteinander
    Ich habe folgendes Problem, ich habe eine Seite, die nur mit IE Funzt, nun will ich für Netscape & Opera Nutzer eigenständige Alternativseiten machen, dazu möchte ich ein Startbild der Page machen, das je nach dem weiterleitet.
    Mit Netscape und Internet Explorer-kennung gibts kein Problem, da ich dass ja mit navigator.appName auslesen kann, jedoch gibt mir der Opera auch Microsoft Internet Explorer aus
    wie kann ich das Problem lösen?

    indem du auf das prüfst, was du benutzen möchtest. Da der appName keinerlei informationen über die Fähigkeiten des Browsers hergibt.

    Ein alert(typeof window.Funktion) zeigt dir ob die Funkktion existiert, die im Netscape nicht funktionieren soll und dann kannst du weiterleiten.

    Struppi.

    1. Hallo Struppi

      Ein alert(typeof window.Funktion) zeigt dir ob die Funkktion existiert, die im Netscape nicht funktionieren soll und dann kannst du weiterleiten.

      Ich versteh da nur Bahnhof! Ich will nicht testen ob Funktionen gehen oder nicht, ich will einfach je nachdem, welcher Browser es ist, weiterleiten!
      danushka

      1. Hallo Struppi

        Ein alert(typeof window.Funktion) zeigt dir ob die Funkktion existiert, die im Netscape nicht funktionieren soll und dann kannst du weiterleiten.
        Ich versteh da nur Bahnhof! Ich will nicht testen ob Funktionen gehen oder nicht, ich will einfach je nachdem, welcher Browser es ist, weiterleiten!

        du schreibst, das etwas nicht funktioniert. Woher weißt du das?
        Weil du eine Fehlermeldung erhälst und wenn du diese abfängst ist dein Problem ja schon gelöst.

        Z.b.

        if(!document.getElementById) alert('dein Browser ist zu alt');

        bzw. eine weiterleitung: window.location.href = "alter Browser.html";

        Alles andere ist unnötig. Da du ja nicht Wissen willst, wie der Browser heißt, sondern du willst den Browser haben, in dem dein Skript funktioniert, oder?

        Struppi.

        1. Hallo Struppi
          Nein, es ist keine Fehlermeldung, ich arbeite mit ebenen und im Netscape & Opera werden diese nicht angezeigt, es ist ja ein Fehler! Jedoch weiss ich ja nicht was fehlerhaft ist
          Danushka

          1. Hallo Struppi
            Nein, es ist keine Fehlermeldung, ich arbeite mit ebenen und im Netscape & Opera werden diese nicht angezeigt, es ist ja ein Fehler! Jedoch weiss ich ja nicht was fehlerhaft ist

            also dann verstehe ich dich so: du baust eine Seite die von den (was CSS angeht) am weitesten entwickelten Browsern nicht angezeigt wird und um deine Fehler zu kaschieren, sollen die Browser ausgeschlossen werden?

            Naja, seltsame vorgehensweise, was hälst du davon, dein CSS gültig zu machen und evtl. läuft's dann auch in den beiden von dir genannten Browsern?

            Dabei hilfen Validatoren, die die CSS/HTML Syntax deiner Seite prüfen.
            http://dciwam.de/checkliste/#p1_01

            Struppi.

  2. Hi Danushka,

    ich finde Deine DHTML cool, obwohl die Idee mit einer Art Betriebssystem-Oberfläche nicht neu ist.

    Das Navigator-Objekt liefert nicht immer verläßliche Angaben. Bei einigen Browsern z.B. Opera kann der Benutzer die Kennung frei einstellen...

    Die Lösung führt über Browser-Inidividuelle Objekte, also Eigenschaften, die nur bestimmte Browser haben.

    Opera allgemein kannst Du erkennen, indem Du z.B. die Eigenschaft window.opera abfragst. Ist der Wert vorhanden, bzw. gesetzt, handelt es sich eindeutig um Opera:

    op = (window.opera) ? true : false;
    if (op) alert ("Opera!");

    Hilft Dir das Beispiel weiter?

    Gruß,
    Danny

    1. Hi Danushka,

      ich finde Deine DHTML cool, obwohl die Idee mit einer Art Betriebssystem-Oberfläche nicht neu ist.

      auf die Idee bin ich auch grad gekommen:

      soviele Fehler, da ist es natürlich kein Wunder, das ein Browser der was auf sich hält die Seite nicht anzeigt:
      http://jigsaw.w3.org/css-validator/validator?uri=http%3A%2F%2Fdanushka.ch%2Fie%2Findex.php&warning=1&profile=css1

      Also, Danushka's Stelle würd ich auf den IE >4 prüfen, das dürfte der einzige Browser sein, der die Seite anzeigt.
      (ich wäre mir aber an deiner Stelle nicht sicher, dass das der IE 7 auch noch tut)

      Struppi.