Chrischi: weiterleiten entsprechend der Bildschirmauflösung

Hallo zusammen,

ich möchte auf der Startseite meiner Page, eine weiterleitung entsprechend der Bildschirmauflösung kleiner als 1024 oder grösser gleich 1024 machen, damit bei der kleineren Variante nicht so viele Scrollbalken sind.

Leider fragt er beim IE 5 ab, ob er das alte fenster schliessen soll.

Geht es irgendwie, dass er es gleich im selben Fenster öffnet?

Hier mein Script bis jetzt:

<script language="JavaScript">
function aufloesung()
{
var Hoehe, Breite, ziel, ziel1;
Hoehe=screen.height;
Breite=screen.width;
if (Breite<1024)
{
window.open("index800.html");
window.close();
}
if (Breite>=1024)
{
window.open("index1024.html");
window.close();
}
}
</script>
<body onload="aufloesung()"></body></html>

  1. Hallo Chrischi,

    statt open() einfach self.location.href verwenden und es sollte klappen

    Viele Grüße

    Antje

  2. hi,

    Leider fragt er beim IE 5 ab, ob er das alte fenster schliessen soll.

    das ist gut so, andernfalls ginge die history verloren, das sehen viele Besucher nicht gerne.

    Geht es irgendwie, dass er es gleich im selben Fenster öffnet?

    wie Antje geschrieben hat. Ich schlage allerdings noch folgende Erweiterung vor:

    if(document.images) top.location.replace("neu.htm");
    else top.location.href="neu.htm";

    Die replace-Methode ersetzt in der History die Auswahlseite gegen die eigentliche Startseite. Das verhindert das laestige "Haengenbleiben" beim zurueckgehen per Back-Button.
    Da aber nicht alle Browser replace verstehen, wird es nur denen angeboten, die das image-objekt kennen. (Das passt in etwa) Alle anderen werden mit location.href weitergeleitet.

    Hier noch ne kleine Anregung: Nicht alle Besucher haben ihr Browserfenster auf Vollbild gestellt. Sinnvoller waere eigentlich, die Groesse des Browserfensters abzufragen, und dann entsprechend weiterzuleiten.

    Alles klar?

    Gruss  Joachim

    1. Hallo,

      entschuldigt das ich einfach so dazwischen schreibe,
      aber das interessiert mich auch, und ich weiß noch nicht wie man die Grösse und Auflösung des gegenüber abfrägt, damit er den Seitenaufbau genauso sauber sieht wie ich ihn.

      Hier noch ne kleine Anregung: Nicht alle Besucher haben ihr Browserfenster auf Vollbild gestellt. Sinnvoller waere eigentlich, die Groesse des Browserfensters abzufragen, und dann entsprechend weiterzuleiten.

      Alles klar?
      Gruss  Joachim

      Kannst du das mir genauer erklären, damit ich es auch anwenden kann??
      (PS: Ich hatte letzte Woche schon mal gepostet, aber mit der Antwort war es leider nicht getan.

      herzliche Grüsse
      Günter

      1. HI,

        entschuldigt das ich einfach so dazwischen schreibe,

        Dafuer ist das Forum ja da...

        Kannst du das mir genauer erklären, damit ich es auch anwenden kann??

        Also, anbei mal eine Funktion, die Dir die Fenstergroesse anzeigt:

        function fenster()
        {
        if(document.all)
          {
             breit=document.body.clientWidth;
             hoch=document.body.clientHeight;
          alert("Breite: "+breit+"  Hoehe: "+hoch);
          }
        if (document.layers)
          {
          breit = self.innerWidth;
          hoch = self.innerHeight;
            alert("Breite: "+breit+"  Hoehe: "+hoch);
            }
        }

        Wobei wichtig ist, das dem IE der Wert erst im body zur Verfuegung steht. Du kannst diese Funktion mit onload="fenster()" im body-tag aufrufen. Statt alert koenntest Du jetzt weitere if-Abfragen einbauen, und mit einer neuen URL verbinden:

        if(breit<=599) self.location.href="...html";

        Ausserdem kann man noch eine reload-Funktion einbauen, falls die Fenstergroesse veraendert wird. Schau mal ins Archiv, sonst kram ich eine raus.

        Alles klar? Sonst nochmal posten.

        Gruss  Joachim

        1. Hallo Joachim,

          Ausserdem kann man noch eine reload-Funktion einbauen, falls die Fenstergroesse veraendert wird. Schau mal ins Archiv, sonst kram ich eine raus.
          Alles klar? Sonst nochmal posten.

          Ich habe gerade dein Posting im Archiv gelesen, vom 4.4. aber ich möchte dass wenn jemand sich die Seite anschaut, z. B. mit 800x600 er trotzdem noch alles sieht, auch wenn er das Browserfenster nicht als Vollbild gestartet hat. (Wird für Intranet verwendet, und da bei uns auch jeder einen anderen Monitor hat, und eine andere Grafikkarte, könnte dies sonst zu Quengeleien kommen :o)
          (kenne mich in java noch nicht aus)

          Danke auch für Deine bisherige Mühe
          herzlichen Dank
          Günter

  3. Hallo Chrischi,

    vielleicht hilft Dir das hier weiter:

    <script LANGUAGE="JavaScript">
    <!-- Begin
    function redirectPage() {
    var url640x480 = "http://www.yoursite.com/640x480";
    var url800x600 = "http://www.yoursite.com/800x600";
    var url1024x768 = "http://www.yoursite.com/1024x768";
    if ((screen.width == 640) && (screen.height == 480))
    window.location.href= url640x480;
    else if ((screen.width == 800) && (screen.height == 600))
    window.location.href= url800x600;
    else if ((screen.width == 1024) && (screen.height == 768))
    window.location.href= url1024x768;
    else window.location.href= url640x480;
    }
    // End -->
    </script>

    Es wird auf drei verschiedene Auflösungen getestet und entsprechend auf die Url weitergeleitet.

    Gruß,
    Reiner

  4. Hallo zusammen,

    ich möchte auf der Startseite meiner Page, eine weiterleitung entsprechend der Bildschirmauflösung kleiner als 1024 oder grösser gleich 1024 machen, damit bei der kleineren Variante nicht so viele Scrollbalken sind.

    Leider fragt er beim IE 5 ab, ob er das alte fenster schliessen soll.

    Geht es irgendwie, dass er es gleich im selben Fenster öffnet?

    Hier mein Script bis jetzt:

    <script language="JavaScript">
    function aufloesung()
    {
    var Hoehe, Breite, ziel, ziel1;
    Hoehe=screen.height;
    Breite=screen.width;
    if (Breite<1024)
    {
    window.open("index800.html");
    window.close();
    }
    if (Breite>=1024)
    {
    window.open("index1024.html");
    window.close();
    }
    }
    </script>
    <body onload="aufloesung()"></body></html>

  5. Hallo,

    entweder mein Browser spinnt, oder meine erste Antwort ist verloren gegangen. Hier nun nochmals:

    <script LANGUAGE="JavaScript">
    <!-- Begin
    function redirectPage() {
    var url640x480 = "http://www.yoursite.com/640x480";
    var url800x600 = "http://www.yoursite.com/800x600";
    var url1024x768 = "http://www.yoursite.com/1024x768";
    if ((screen.width == 640) && (screen.height == 480))
    window.location.href= url640x480;
    else if ((screen.width == 800) && (screen.height == 600))
    window.location.href= url800x600;
    else if ((screen.width == 1024) && (screen.height == 768))
    window.location.href= url1024x768;
    else window.location.href= url640x480;
    }
    // End -->
    </script>

    Ich hoffe, ich konnte weiterhelfen.
    Gruß, Reiner