Linus: Safari Browsercheck

Hallo allerseits..

Nachdem ich mich nun schon eine Weile durch die google-Seiten durchgeforstet habe, bin ich leider nur auf Bruchstücke meines Ziels gestoßen. Zwar finde ich normale Browser-Checks und Zeilen wie "Safari versteckt seine Identität" und

The only way I have (right now) to detect Safari is through the UA, I'm
afraid.

bSaf     = (navigator.userAgent.toLowerCase().indexOf('safari') != -1);
bSaf12   = (bSaf && (navigator.productSub > 20030107));

..was auch immer das bedeuten soll. Leider fand ich aber kein Script das so simpel ist, das ich es als Javascript-ziemlich-gut-versteher-aber-nicht-schreiben-könner benutzen könnte.
:(

Ich suche nichts weiter, als ein Script, dass Safari-user auf eine andere Seite schickt als alle anderen User.
Denn unter browsercam.com sah ich dass nur unter Safari die Seite nicht funktioniert.

Sowas wie (nicht böse sein Javascript-Götter dieses Forums)
if (Safari)

document.location.replace('safari.html');

elseif

document.location.replace('alleanderen.html');

---
:)

Ich danke im Vorraus allen, die sich die Mühe machen (einem völlig unbekannten) zu helfen.

Gruß aus Frankfurt
Linus

  1. hi,

    Ich suche nichts weiter, als ein Script, dass Safari-user auf eine andere Seite schickt als alle anderen User.
    Denn unter browsercam.com sah ich dass nur unter Safari die Seite nicht funktioniert.

    Dann versuche doch lieber, letzteres zu ändern - anstatt mit einem Javascript, welches sie in die Wüste schickt, die Safari-nutzenden Besucher zu verärgern.

    gruß,
    wahsaga

    --
    /voodoo.css:
    #GeorgeWBush { position:absolute; bottom:-6ft; }
    1. Dann versuche doch lieber, letzteres zu ändern - anstatt mit einem Javascript, welches sie in die Wüste schickt, die Safari-nutzenden Besucher zu verärgern.

      Ich will für die Safari-User nur ein Preloader-Script überspringen.. damit sie sich nicht wundern warum nichts passiert und den "vorladen übersprigen" button drücken müssen.

      Kann sowas funktionieren??

      <script type="text/javascript">
      <!--
      function Is() {
      agent = navigator.userAgent.toLowerCase();
      this.major = parseInt(navigator.appVersion);
      this.minor = parseFloat(navigator.appVersion);

      this.mac = (agent.indexOf("mac")!=-1);
      this.safari = (this.mac && (agent.indexOf("safari")!=-1));
      }

      var is = new Is();

      if (is.safari)
      {
      document.location.replace('scroll.html?1');
      }
      else
      {
      document.location.replace('prescroll.html');
      }

      //-->
      </script>

      Gruß aus Frankfurt
      Linus

      1. Dann versuche doch lieber, letzteres zu ändern - anstatt mit einem Javascript, welches sie in die Wüste schickt, die Safari-nutzenden Besucher zu verärgern.

        Ich will für die Safari-User nur ein Preloader-Script überspringen.. damit sie sich nicht wundern warum nichts passiert und den "vorladen übersprigen" button drücken müssen.

        Ist evtl. eher das "preloader" Skript nicht in Ordung?
        Soweit ich weiß kann safari auch onload oder nicht?

        Struppi.

        1. Hallo Struppi

          Ist evtl. eher das "preloader" Skript nicht in Ordung?
          Soweit ich weiß kann safari auch onload oder nicht?

          Wahrscheinlich ist das preloaderscript nicht für Safari tauglich. Die Sache ist nur dass es unter allen anderen Browsern funktioniert, und ich mich Frage, ob sich die Mühe lohnt mich nach einem anderen Script umzusehen.. dann funktioniert es wieder unter einem anderen Browser nicht oder so.
          Vielleicht kennt jemand ein Preloader-Script, das unter allen Browsern läuft?
          Oder es reicht jetzt sogar, da mein Browser-Script-Vorschlag funktionierte *freu*, ein Preloader-Script nur für Safari.. aber danach habe ich mich noch nicht umgesehen und ich will schließlich nicht die Regeln dieses Forums missachten.

          Die elf Gebote des SELF-Forums

          Für mich ist mein Problem gelöst - Danke an alle

          Gruß
          Linus

  2. Hallo,

    The only way I have (right now) to detect Safari is through the UA, I'm
    afraid.

    bSaf     = (navigator.userAgent.toLowerCase().indexOf('safari') != -1);
    bSaf12   = (bSaf && (navigator.productSub > 20030107));

    Du kannst dir ja mal Browsererkennung durch JavaScript und die Eigenschaften der
    Konqerorversionen anschauen, vielleicht kommst du damit weiter.

    Grüsse

    Cyx23