delpino: Layeraufgebaute Menüstruktur zentrieren

Mittels Layern wird eine Menüstruktur aufgebaut (wie bei http://www.braun.de/d/default2.htm). Die einzelnen Menüs und Untermenüs sind jeweils Layer, die je nach Bedarf ein- oder ausgeblendet werden.

Soweit so gut. Jetzt soll aber diese Menüstruktur zentriert werden, dass heisst wenn ich ein resize mache, müssen sämtliche Layer (um die 40) neu positioniert werden. Gibt es dazu vorgefertigte Lösungen, oder ist das kaum machbar.

  1. hallo, herzlichen gluckwunsch zu deinem problem,

    ich habe sehr lange zeit damit verbracht das problem zu loesen,

    grundsaetzlich musst du die fensterbreite in pixeln auslesen, das machst du mit document.body.clientWidth (IE) bzw. window.innerWidth (netscape). dann kannst du schoneinmal eine logik bestimmen nach der die layer positioniert werden (z.b. fensterbreite /2 ist die mitte des aktuellen fensters usw.)
    diese logik setzt du jetzt in ein jscript um. beim netscape musst du noch ein "resize on refresh" einsetzen und schon ist das ganze fertig.
    ich habe bei meinen versuchen festgestellt, dass zumindest mein script sehr absturzanfaellig ggü. gewissen konstellationen (was genau weiss ich nicht, insbesondere bei netscape) ist, der code riesig wird (alle browser sollten schon funktionieren).
    da ich meinen kunden letztendlich ueberzeugen konnte auf eine statische darstellung, optimiert auf eine bestimmte darstellung zu setzen, habe ich noch nicht weitergedacht (sehr empfehlenswert fuer die performance).
    wenn du interess hasst maile oder poste einfach, dann kann ich meinen alten code herauskramen, der immerhin auf ie und nur manchmal bei ns funktioniert.
    tschuess

    peter

    1. ach uebrigens, ich vergass,
      ich empfehle grundsachlich keine dhtml loesungen fuer seiten, die fuer eine breite masse funktionieren sollen wie z.b. in deinem fall.
      man muss immer damit rechnen das ein gewisser teil mit darstellungsfehlern leben muss. probleme tauchen von browser zu browser zu version auf.
      wenn der kunde dennoch darauf besteht empfehle ich eher flash, das funktioniert wesentlich haufiger sehr wahrscheinlich auch mit netscape 14 bzw. ie 12.1.

      tschuess
      peter