Klaus: Browserabhängige Routinen

Hallo,
in Selfhtml und Google habe ich gefunden, wie man ermittelt, um welchen Browser es sich handelt.
Wo es jetzt nocht hakt, ist die praktische Umsetzung.
Ich möchte onload=...... browserabhängig gestalten.
Geht das besser mit Javascript oder CSS?
Wie könnte dies aussehen?
Ich hatte an folgendes gedacht (elegant,umständlich,unmölich?)
onload="if (window.navigator.userAgent.indexOf('MSIE') >=0){f1()} else {f2()}"

Viele Grüße
Klaus

  1. Hi,

    in Selfhtml und Google habe ich gefunden, wie man ermittelt, um welchen Browser es sich handelt.
    Wo es jetzt nocht hakt, ist die praktische Umsetzung.

    das liegt daran, dass es *nicht* praktisch ist, sowas umzusetzen. Was interessiert Dich, wie der Browser heißt?

    Ich möchte onload=...... browserabhängig gestalten.

    Nein, fähigkeitenabhängig.

    Wie könnte dies aussehen?

    Was willst Du erreichen?

    onload="if (window.navigator.userAgent.indexOf('MSIE') >=0){f1()} else {f2()}"

    Dies ist der mit riesengroßem Abstand denkbar allerschlechteste Weg.

    Cheatah

    --
    X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
    X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
    1. Hi,

      Was willst Du erreichen?

      zunächst war nur der Gedanke, darauf hinzuweisen, dass es bessere Browser als der IE gibt. Und wie ich gelesen habe, weicht der IE sehr häufig vom Standard ab, daher sollten nach und nach abweichende Funktionen hinzukommen, wobei ich immer nur unterscheiden wollte "IE oder nicht IE".
      Bevor ich aber in die falsche Richtung renne, wollte ich mich hier informieren und hätte mit meiner Javascript-Lösung glatt (nach Dir) den
      denkbar schlechtesten Weg gewählt.
      Allerdings habe ich konkrete, für mich verständliche Beispiele auch nur in Javascript in der genannten Form gefunden.
      Schönen Abend
      Klaus

      1. Moin

        es ist sinnvoller im JavaScript bei der Verwendung eines Objekts zu prüfen, ob der jeweilige Browser dies Objekt kennt oder nicht und dann im Script darauf zu reagieren, statt pauschal von vornherein zu trennen. Die verschiedenen IE-Versionen unterscheiden sich in der Kenntnis der JavaScript-Objekte genauso wie die verschiedenen Versionen anderer Browser.
        Lies dir dazu mal diese Seiten durch: Barrierefreies JavaScript

        Gruß
        rfb

        --
        Man kann einen Menschen nichts lehren, man kann ihm nur helfen, es selbst zu entdecken.
        (Galileo Galilei)
        1. Moin

          es ist sinnvoller im JavaScript bei der Verwendung eines Objekts zu prüfen, ...

          Die Frage bleibt, ob Javascript die beste Lösung ist oder welche andere Möglichkeiten in Frage kämen.

          Zitat Cheatah:

          onload="if (window.navigator.userAgent.indexOf('MSIE') >=0){f1()} else {f2()}"

          Dies ist der mit riesengroßem Abstand denkbar allerschlechteste Weg.

          Ist damit Javascript gemeint und/oder die Browserabfrage?

          1. Moin

            Die Frage bleibt, ob Javascript die beste Lösung ist oder welche andere Möglichkeiten in Frage kämen.

            Gegenfrage: die Lösung für welche Aufgabe?

            Ist damit Javascript gemeint und/oder die Browserabfrage?

            vermute letzteres.

            Gruß
            rfb

            --
            Man kann einen Menschen nichts lehren, man kann ihm nur helfen, es selbst zu entdecken.
            (Galileo Galilei)
      2. Hello out there!

        zunächst war nur der Gedanke, darauf hinzuweisen, dass es bessere Browser als der IE gibt.

        Den Gedanken kannst du wieder vergessen. Diejenigen, die das wissen, benutzen längste einen anderen Browser. Die anderen wirst du mit einem solchen Hinweis auch nicht dazu bewegen.

        wobei ich immer nur unterscheiden wollte "IE oder nicht IE".

        Das tust du am besten mit <http://de.selfhtml.org/css/layouts/browserweichen.htm#alternative@title=conditional comments>.

        (Lass dich durch die IMHO ziemlich unsinnige Einordnung des Abschnitts in SELFHTML nicht verwirren, conditional comments taugen nicht nur zum Einbinden verschiedener Stylesheets; beliebiger HTML-Code kann nur für IEs hinzugefügt werden. Also können damit auch Nur-IE-Scripte eingebunden werden.)

        See ya up the road,
        Gunnar

        --
        „Wer Gründe anhört, kommt in Gefahr nachzugeben.“ (Goethe)