Browser & Bildschirmauflösung

  • Hallo,
    gibt es einen Code, der ungefähr folgendes zum Inhalt hat:

    1.) Finde heraus, welchen Browser der User benutzt. Leite ihn davon abhängig zu einer bestimmten Seite (zb. mit IE zu Seite a, mit Netscape zu Seite b, mit Opera zu Seite c)
    2.) Finde heraus, welche Bildschirmauflösung der User benutzt. Leite ihn davon abhängig zu einer bestimmten Seite (zb. mit 800x600 zu Seite 1, mit 1024x768 zu Seite 2, ...)

  • das mit der auflösung:

    Code
    <SCRIPT LANGUAGE="JavaScript">
    document.write(screen.width + "x" + screen.height)
    </SCRIPT>

    das andere:
    kanst du in php so herausfinden:

    Code
    $HTTP_SERVER_VARS['HTTP_USER_AGENT'];

    [/code][/quote]

    Gruss Joel

  • hm... danke... aber wie leite ich den benutzer nun weiter?
    mit php kenn ich mich ja leider überhaupt nicht aus, und in dem javascriptcode gibt es auch keine weiterleitung... :(

  • So sollte das gehen:

    Code
    <SCRIPT language="JavaScript"> 
    <!-- 
    var screen = screen.width; 
    if (screen == "1280")location.href="index1280.html"; 
    else if (screen == "1152")location.href="index1152.html";
    else if (screen == "1024")location.href="index1024.html"; 
    else if (screen == "800")location.href="index800.html";
    else if (screen == "640")location.href="index640.html"; 
    //--> 
    </SCRIPT>

    URL:
    http://devmag.net/tricks/js/javascript_18.htm

    Gruss Joel

  • nach dem ich das Scipt bei mir eingefügt habe passier leider nix, nur die fehler meldung:
    'screen.width' ist Null oder kein Objekt

    was habe ich falschgemacht?? Oder warum funtzt das nicht??

  • Moin!

    Zitat von joel

    So sollte das gehen:

    Code
    <SCRIPT language="JavaScript"> 
    <!-- 
    var screen = screen.width; 
    if (screen == "1280")location.href="index1280.html"; 
    else if (screen == "1152")location.href="index1152.html";
    else if (screen == "1024")location.href="index1024.html"; 
    else if (screen == "800")location.href="index800.html";
    else if (screen == "640")location.href="index640.html"; 
    //--> 
    </SCRIPT>

    URL:
    http://devmag.net/tricks/js/javascript_18.htm

    Das kann so nicht gehen, weil

    1. 'screen' für Java ein fester Begriff ist und du ihn nicht als Variable deklarieren kannst und
    2. das ganz in die Hose geht, wenn jemand eine andere Bildschirmauflösung hat, als in den Variationen angegeben wurde.

    So sollte es funktionieren:

    Übrigens kann man einige Browserinformationen ebenfalls mit JavaScript ermitteln:

    Code
    <script type="text/javascript" language="JavaScript">
    <!--
    var browser_name = appName;
    var browser_spitzname = navigator.appCodeName;
    var browser_version = navigator.appVersion;
    var browser_sprachen = navigator.language;
    var java_möglich = navigator.javaEnabled();
    //-->
    </script>


    Mehr Informationen dazu findest du hier -> http://de.selfhtml.org/javascript/objekte/navigator.htm[/code]

    Gruß aus der Marsch!

    Ronald

  • @ Roland: Ich bin absoluter amateur, und weiss jetzt nicht wo ich die Seiten einbinde, da ich die logik von dem Script irgendwie nicht versteh... :cry:

  • Zitat von Pepsi

    @ Roland: Ich bin absoluter amateur, und weiss jetzt nicht wo ich die Seiten einbinde, da ich die logik von dem Script irgendwie nicht versteh... :cry:

    Hi,

    das erste Script bindest du einfach in den Head-Bereich der Index.html ein.

    Das zweite Script legt nur die Variablen an. Es sollte nur ein Beispiel sein, was alles geht - es gibt da Variablen aber nicht an den Browser aus.

    Gruß aus der Marsch!

    Ronald

  • Zitat von Ronald

    Hm, ich versuch mal den Code zu dokumentieren... :)
    (Ich hoff, das du nichts dagegen hast Ronald!!!)

    Also:
    In der Variablen sc wird die vom User verwendete Bildschirmauflösung gespeichert und normal wird mit der niedrigsten gängigen Auflösung definiert.
    Als nächstes wird abgefragt, ob die verwendete bildschirmauflösung größer als (in verschiedenen Stufen) eine gängige Auflösung ist. Wenn dem so ist, wird normal in mit dieser Stufe neudefiniert.
    mit top.location.href wird der browser an eine neue seite weitergeleitet, die für die vom user verwendete Auflösung optimiert wurde. Dabei wird die URL der Seite zusammengesetz. Ein möglicher Dateiname für eine solche seite wäre z.B.: index1024.html
    Dem entsprechend sind deine jeweiligen Dateien zu benennen.

    MfG,
    Mac.

    Dulden hat noch lange nichts mit Toleranz zu tun!

    Toleranz heißt akzeptieren und unterstützen, weniger ist Dulden!

  • Zitat von Macintosch


    Hm, ich versuch mal den Code zu dokumentieren... :)
    (Ich hoff, das du nichts dagegen hast Ronald!!!)

    Ganz im Gegenteil - ich schreib hier ohnehin immer schon viel zu viel ;)

    Gruß aus der Marsch!

    Ronald

  • Zitat von mihai

    Hallo,
    gibt es einen Code, der ungefähr folgendes zum Inhalt hat:

    1.) Finde heraus, welchen Browser der User benutzt. Leite ihn davon abhängig zu einer bestimmten Seite (zb. mit IE zu Seite a, mit Netscape zu Seite b, mit Opera zu Seite c)
    2.) Finde heraus, welche Bildschirmauflösung der User benutzt. Leite ihn davon abhängig zu einer bestimmten Seite (zb. mit 800x600 zu Seite 1, mit 1024x768 zu Seite 2, ...)