source: Browsererkennung

Da ich über http://my.dot.tk/ eine Weiterleitung auf meine Homepage eingerichtet habe kapiert Opera die Frames nicht mehr. Wenn ich direkt auf die Seite gehe klappt es ohne Probleme. Da ich aber diese .tk Adresse brauche möchte ich jetzt vor der Website eine seite einbauen, die die Besucher zwischen Operanutzern und allen anderen trennt. Wie kann ich das umsetzen?

  1. Hallo!

    Die Schwierigkeit bei der Identifizierung des Opera-Browsers liegt sicherlich darin, dass er sich als so ziemlich jeder anderer Browser ausgeben kann. Dennoch sendet Opera in der Umgebungsvariablen navigator.userAgent auch IMMER den Teilstring "Opera" mit.

    Du müsstest also mit regulären Ausdrücken abfragen, ob in navigator.userAgent Opera vorkommt.

    zum Beipsiel:

    if (navigator.userAgent.indexOf("opera")>=-1){
      location.href="hastenichgesehen.html";
    }

    Wenn ja, dann baust du ein mit location.href="eigentlichesZiel.html" nen redirect.

    HTH,

    Carsten

    1. Hallo Carsetn

      if (navigator.userAgent.indexOf("opera")>=-1){
        location.href="hastenichgesehen.html";
      }

      Zur Erkennung seiner selbst und zu nichts anderem hat Opera doch das Opera-Objekt, also ganz einfach:

      if (window.opera)location.href="hastenichgesehen.html";

      Gruß Gernot

      1. Heyho!

        Zur Erkennung seiner selbst und zu nichts anderem hat Opera doch das Opera-Objekt

        Würde das nicht bei jedem anderen Browser zu einer hässlichen Fehlermeldung führen? Die haben/kennen das Objekt schließlich nicht...

        Mastershrimp

        --
        Kämpft für die Rettung von dem Genitiv!
        1. Hallo,

          Zur Erkennung seiner selbst und zu nichts anderem hat Opera doch das Opera-Objekt

          Würde das nicht bei jedem anderen Browser zu einer hässlichen Fehlermeldung führen? Die haben/kennen das Objekt schließlich nicht...

          Nein. Deshalb ja das if(). Wenn der borwser das nicht kennt, geht er weiter.

          <html>
          <head>
           <title>Untitled</title>
           <script type="text/javascript">

          function werbistdu()
            {
             if(window.ActiveXObject)
              alert("ich bin dein offener freund der IE");
             else if(window.opera)
              alert("ich bin das musikalische Haus");
             else if(window.ChromeWindow)
              alert("there.is.only.xul");
             else
              alert("geht di net an");
            }

          </script>
          </head>

          <body onload="werbistdu()">

          </body>
          </html>

          Grüße
          Thomas

          1. Nein. Deshalb ja das if(). Wenn der borwser das nicht kennt, geht er weiter.

            Oh. Hatte ich übersehen. Tut mir leid. Ist schon spät ;-)

            Gruß

            Mastershrimp

            --
            Kämpft für die Rettung von dem Genitiv!
          2. Hallo Thomas,

            Würde das nicht bei jedem anderen Browser zu einer hässlichen Fehlermeldung führen? Die haben/kennen das Objekt schließlich nicht...

            Nein. Deshalb ja das if(). Wenn der borwser das nicht kennt, geht er weiter.

            Das Komische: In Opera kann ich das Oberobjekt "window" weglassen und er antwortet brav auf javascript:if(opera)alert('hier bin ich'). Das verwundert ja auch nicht weiter. In Mozilla kann ich es weglassen und es kommt keine Fehlermeldung in der Statuszeile, während diese im MSIE sehrwohl kommt, wenn das übergeordnete "window." fehlt.

            Gruß Gernot

            1. Hallo Gernot,

              Nein. Deshalb ja das if(). Wenn der borwser das nicht kennt, geht er weiter.

              Das Komische: In Opera kann ich das Oberobjekt "window" weglassen und er antwortet brav auf javascript:if(opera)alert('hier bin ich'). Das verwundert ja auch nicht weiter. In Mozilla kann ich es weglassen und es kommt keine Fehlermeldung in der Statuszeile, während diese im MSIE sehrwohl kommt, wenn das übergeordnete "window." fehlt.

              Ich konnte das jetzt mit meinem IE 6 und IE 5.5 nicht nachvollziehen, wenn ich mein Bsp. von oben nehme und dort nur if(ActiveXObject) eintrage, bekomme ich die entsprechende alert-Meldung ohne, dass der IE sonstwie murrt.

              Hmm ....

              Grüße
              Thomas

          3. Hallo,

            function werbistdu()
              {
               if(window.ActiveXObject)
                alert("ich bin dein offener freund der IE");
               else if(window.opera)
                alert("ich bin das musikalische Haus");
               else if(window.ChromeWindow)
                alert("there.is.only.xul");
               else
                alert("geht di net an");
              }

            noch eine passende Quelle zur Browsererkennung per JavaScript:http://www.lipfert-malik.de/webdesign/tutorial/bsp/browser_js_test.html

            Grüsse

            Cyx23

    2. hi,

      Du müsstest also mit regulären Ausdrücken abfragen, ob in navigator.userAgent Opera vorkommt.

      zum Beipsiel:
      if (navigator.userAgent.indexOf("opera")>=-1){

      die methode indexOf() des string-objektes ist davon, mit regulären ausdrücken zu arbeiten, ungefähr so weit entfernt wie kübelböck von einem sangeskünstler.

      gruß,
      wahsaga

      --
      "Look, that's why there's rules, understand? So that you _think_ before you break 'em."
  2. Hallo,

    möchte ich jetzt vor der Website eine seite einbauen, die die Besucher zwischen Operanutzern und allen anderen trennt. Wie kann ich das umsetzen?

    100% sicher? Gar nicht.
    Denn den Useragen kann ändern und das nicht nur bei Opera.

    Etwas sicher: über den Useragenstring aus der HTTP-Header (HTTP_USER_AGENT). Erfodert aber serverseitige möglichkeiten (Perl, PHP, JSP etc., oder SSI) http://de.selfhtml.org/cgiperl/intro/umgebungsvariablen.htm

    Ganz wenig sicher: mit Javascript, wobei du dort entweder über die Abfrage des "navigator" Objekts http://de.selfhtml.org/javascript/objekte/navigator.htm oder über die Abfrage bestimmte Objekte (z.B. if(window.ActiveXObject) für den IE etc. gehen kannst.

    Grüße
    Thomas

  3. Hi,

    Da ich über http://my.dot.tk/ eine Weiterleitung auf meine Homepage eingerichtet habe kapiert Opera die Frames nicht mehr. Wenn ich direkt auf die Seite gehe klappt es ohne Probleme.

    Das Weiterleitungsframeset verwendet (aufgrund des fehlenden Links zur Problemseite natürlich nur geraten) dieselben frame-Namen wie Dein eigenes. Ändere das.

    Da ich aber diese .tk Adresse brauche

    Kommst Du aus Tokelau? Das wäre m.E. der einzige Grund, eine Domain aus Tokelau zu brauchen.

    cu,
    Andreas

    --
    MudGuard? Siehe http://www.Mud-Guard.de/
    Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
    1. Hi,

      Das Weiterleitungsframeset verwendet (aufgrund des fehlenden Links zur Problemseite natürlich nur geraten) dieselben frame-Namen wie Dein eigenes. Ändere das.

      Hab ich und es nützt nichts!

      Da ich aber diese .tk Adresse brauche

      Kommst Du aus Tokelau? Das wäre m.E. der einzige Grund, eine Domain aus Tokelau zu brauchen.

      Aus Tokelau komm ich nicht gerade, aber diese Adresse haben wir jetzt schon verbreitet und .tk ist der einzige anbieter, der eine so kurze endung für umsonst anbietet.
      Schau dir mal die seite an, aber mach mich nicht so fertig, das ist meine erste Website.

      1. Hallo.

        Aus Tokelau komm ich nicht gerade, aber diese Adresse haben wir jetzt schon verbreitet und .tk ist der einzige anbieter, der eine so kurze endung für umsonst anbietet.
        Schau dir mal die seite an, aber mach mich nicht so fertig, das ist meine erste Website.

        http://www.urizenband.com/ wirkt zumindest origineller. Aber die Schrift ist angenehm groß. Wenn man jetzt noch die Verweise also solche erkennen könnte, die Überschriften nicht unterstrichen wären und es etwas zu lesen und zu betrachten gäbe, ist eigentlich nur noch die technische Umsetzung zu beanstanden. -- In Bezug auf "für umsonst" insgesamt ein rundes Bild.
        MfG, at

      2. Hallo,

        Schau dir mal die seite an, aber mach mich nicht so fertig, das ist meine erste Website.

        In dem Iframe steht seltsamerweise

        <%@ Page Language="VB" ContentType="text/html" ResponseEncoding="iso-8859-1" %>

        Gruß
        Alexander Brock

        --
        SelfCode: ie:{ fl:{ br:> va:) ls:# fo:) rl:( n4:( ss:| de:> js:( ch:| sh:( mo:) zu:}
        http://emmanuel.dammerer.at/selfcode.html
        Deshalb können Pinguine nicht fliegen:
        Was nicht fliegt kann auch nicht abstürzen
        <img src="http://www.againsttcpa.com/images/AgainstTCPA-Log01Small.gif" border="0" alt="">
        http://againsttcpa.com