ariane85: Window Resize

Hallo zusamen,

nach Erstellung meiner Präsenz sehe ich nun einen Fehler, Layer werden nach dem verkleinern bzw. vergrößern des Browserfensters nicht automatisch verschoben/angepasst (Position).

Daher die Krücke: <body onResize="window.location.href = window.location.href;">

Im IE wird es leider als Fehler angezeigt. :(

Hat jemand von euch eine bessere Lösung?
JS sollte auf max. Breite/Höhe agieren.

Herzlichen Dank
Ari (*:

  1. Hallo ariane85,

    Daher die Krücke: <body onResize="window.location.href = window.location.href;">

    Das sieht wie ein reload aus aber ob das so sinnvoll ist?

    Mit freundlichem Gruß
    Micha

    --
    LeagueEditor JavaScript :: simple Ligaverwaltung auf der Basis von JavaScript || JS Tetris :: für zwischendurch
    1. Hallo Micha,

      herzlichen Dank für deine sehr schnelle Hilfe, leider erkenne ich unter deinem Link [reload] nur ein <a href ...> TAG. Ich benötige eine automatische Funktion, damit der Layer (ist nur einer) wieder auf "center" gesetzt wird.

      :| Ari

      1. Hallo,

        herzlichen Dank für deine sehr schnelle Hilfe, leider erkenne ich unter deinem Link [reload] nur ein <a href ...> TAG. Ich benötige eine automatische Funktion, damit der Layer (ist nur einer) wieder auf "center" gesetzt wird.

        Ich verstehe deine Frage nicht ganz bzw. weiß nicht, wie ich dir weiterhelfen könnte. Kannst du dein Anliegen bitte noch einmal präzisieren und vielleicht die betreffende Seite nennen oder den relevanten Code zur Verfügung stellen?

        Wenn du ein Element horizontal zentriert hast, z.B. mit margin:auto, dann sollte das Element auch immer zentriert bleiben, wenn die Fenstergröße geändert wird.

        Was meinst du in dem Falle mit »Layer«? Wie positionierst du den Layer dann? Ist der z.B. absolut positioniert (position:absolute; top:irgendwas; left:irgendwas)? Natürlich kannst du bei einem Resize eine Funktion aufrufen, die den Layer neu positioniert - auch in Abhängigkeit von der Fensterinnenbreite (Viewport-Breite). Schematisch: document.getElementById("layer").style.left = [berechnete Breite des Dokuments minus die Breite des Layers geteilt durch 2].

        Mathias

  2. Hat jemand von euch eine bessere Lösung?

    Ja, kenne ich. Aufhören die Besucher mit einem Resize zu nerven.

    JS sollte auf max. Breite/Höhe agieren.

    Warum? Was gibt Dir das Recht Dich so auf dem Bildschirm des Besuchers breit zu machen? Wenn ich Deine Seite für wichtig genug halte mach ich sie selbst so groß wie ich es für angemessen halte. Ich empfinde es als Unart!

    1. Hat jemand von euch eine bessere Lösung?

      Ja, kenne ich. Aufhören die Besucher mit einem Resize zu nerven.

      JS sollte auf max. Breite/Höhe agieren.

      Warum? Was gibt Dir das Recht Dich so auf dem Bildschirm des Besuchers breit zu machen? Wenn ich Deine Seite für wichtig genug halte mach ich sie selbst so groß wie ich es für angemessen halte. Ich empfinde es als Unart!

      Netter Ton hier!

      Das Layout hat eine Breite von 800 Pixel und ist zentriert.
      Wird nach dem Aufruf der Seite das Browserfenster verkleinert oder vergrößert, passt sich in der Regel das Layout (CSS) an die neue Breite des Browserfensters an. Leider wird bei meinem Layout ein Layer übersehen. Daher suche ich eine Notlösung, damit alles wieder schön aussieht und am richtigen Platz sich befindet.

  3. Moin!

    nach Erstellung meiner Präsenz sehe ich nun einen Fehler, Layer werden nach dem verkleinern bzw. vergrößern des Browserfensters nicht automatisch verschoben/angepasst (Position).

    Wie werden die Layer denn zentriert? Normalerweise macht man das doch mit CSS - und das funktioniert beim nachträglichen Verändern der Fenstergröße dann absolut automatisch mit dem korrekten Neupositionieren. Auch ohne Neuladen der Seite.

    - Sven Rautenberg

    --
    My sssignature, my preciousssss!