joMakaroni: höhe eines div layers per js abfragen- WIE?

hallo,

ich habe ein DIV layer namens (id=laymain), dessen höhe ich per javascript function abfragen will, wie lautet:

function initDiv()
{
var sizeY=document.getElementById('laymain').style.height;
}

Die function wird im BODY als onLoad="initDiv();" aufgerufen.
Der Inhalt(Bilder und Text) wird per MySQL und PHP dynamisch reingeladen.
Wenn ich die variable sizeY per alert(sizeY); ausgeben will, bekomme ich als wert nichts im alert Fenster angezeigt.

Woran liegt das und was kann ich tun um die höhe des layers zu ermitteln?
Ich brauche diese um einen scroller einzubauen

gruß
joMakaRoni

  1. function initDiv()
    {
    var sizeY=document.getElementById('laymain').style.height;
    }

    du suchst offsetHeight

    Woran liegt das und was kann ich tun um die höhe des layers zu ermitteln?
    Ich brauche diese um einen scroller einzubauen

    Macht das der Browser nicht automatisch?

    Struppi.

  2. ich habe ein DIV layer namens (id=laymain), dessen höhe ich per javascript function abfragen will, wie lautet:

    var sizeY=document.getElementById('laymain').style.height;

    Wenn ich die variable sizeY per alert(sizeY); ausgeben will, bekomme ich als wert nichts im alert Fenster angezeigt.

    Woran liegt das

    Auf diese Art fragst Du nur ab, welchen Wert Du dem CSS-Attribut height gegeben hast (zB "100%"), nicht den tatsächlichen Wert.

    und was kann ich tun um die höhe des layers zu ermitteln?

    Den tatsächlichen Wert, der vom Browser errechnet wurde, erhält man mit der Funktion getComputedStyle(), vorausgesetzt, der Browser unterstützt das (http://www.w3.org/2003/02/06-dom-support.html).

    Ein Beispiel findest Du hier: http://www.styleassistant.de/tips/beispiel56.htm.

    Ich brauche diese um einen scroller einzubauen

    Igitt, warum verwendest Du nicht jene, die der Browser zur Verfügung stellt? Eigenbauten machen sich in der Regel dadurch bemerkbar, dass sie gar nicht oder nicht so funktionieren, wie man es gewohnt ist.