Div Layer neu positionieren

  • Hallo,
    erstmal muss ich sagen, mit Javascript stand ich schon immer auf Kriegsfuss :lol:

    So, wie muss ich es angehen, dass sich meine Div-Layer bewegen?
    Was ich haben will:
    Die Seite wird geladen und dann schiebt sich ein neuer Div Layer von oben ins Bild, damit der Layer die Seite nicht verdeckt, schiebt sich die ganze Seite (in einem Div-Layer) ebenfalls weiter runter... Verstanden?
    Und wenn ich bei dem neuen Layer auf "Schliessen" klicke, geht alles wieder rückwärts....

    Naja, so mein Wunsch, und wie funktioniert das mit Javascript.. ? :roll:


    mfg michi

  • Hallo,

    du gibst deinen divs die Attribute:
    position:absolute
    posx : anynumber
    posy : anynumber

    beide verschiebst du dann nach wünsch über ein JS

    zugriff z.B. document.getElementById('xy').style.PosY = anynumber

    allerdings mußt du beim Berechnen der neuen Position drauf achten, dass evtl. gescrollt worden ist, das musst du dann uzusätzlich mit einrechnen, wie das allerdings exakt funktioniert hab ich momentan nicht im Kopf,..., ein bisschen googeln sollte dich da weiter bringen.

    Grüße
    Methusalix

  • Ach genau, noch eine wichtige Sache:

    Du wirst deinem Diff ein Height mitgeben müssen, allerdings kommt das Problem, dass diese Größe immer sichtbar ist.

    Ich bin mir nicht sicher ob alle Browser eine -posx/Y richtig darstellt, deswegen wäre noch ein Attribute visible (od. JS .... .visibility) = hidden oder visible sinnvoll. Aber das kannst du nur durch testen herausfinden

  • Soviel ich mir den Yahoo Code angesehen und verstanden habe, is nicht viel, spielen die dort mit AJAX (Unwort des Jahres ;) ) rum.
    Und verschieben so die Layer Positionen....

    Obs stimmt = keine Ahungn :D

  • Naja, generell ist AJAX nur ein paar JS-Objekte und dürfte mit der Verschiebung relativ wenig zu tun haben. Evtl. lesen Sie damit den Inhalt aus. :)

    Btw. AJAX ist ne feine Sache,..., nur noch nicht mächtig genug^^

  • Möglich, Yahoo benutzt ja auch 2 .js Dateien mit mehreren hundert Zeilen, natürlich, ohne Zeilenumbruch.

    Und ich mit meinen bescheidenen Javascript Kenntnissen.... naja....
    Danke, auf jeden Fall schon mal :)