Höhe einer Zelle ermitteln
hanshuckebein
- javascript
0 suit0 molily
Hallo,
ich habe eine Tabelle
<table>
<tr>
<td id="zelle">
blabla blabla blabla blabla blabla blabla blabla blabla
</td>
</tr>
</table>
und möchte die Höhe in px herausfinden, die der Inhalt "blabla..." beansprucht (kann sich ändern wenn z.B. das Browserfenster schmaler wird).
Leider brachte meine Javascript-Abfrage
<script type="text/javascript">
alert(document.getElementById("zelle").height);
</script>
grundsätzlich als Ergebnis null (obwohl es die Eigenschaft "height" für tds gibt).
Wie geht es aber richtig?
Martin
grundsätzlich als Ergebnis null (obwohl es die Eigenschaft "height" für tds gibt).
nein - wer sagt das?
eine elementreferenz besitzt für kein einziges html-element die eigenschaft "height" oder die methode "height()"
Wie geht es aber richtig?
getComputedStyle() ist eine methode, die du dir ggf mal ansehen könntest
grundsätzlich als Ergebnis null (obwohl es die Eigenschaft "height" für tds gibt).
nein - wer sagt das?
unter anderem SELFHTML:
http://de.selfhtml.org/javascript/objekte/htmlelemente.htm#td
eine elementreferenz besitzt für kein einziges html-element die eigenschaft "height" oder die methode "height()"
s.o.
Wie geht es aber richtig?
getComputedStyle() ist eine methode, die du dir ggf mal ansehen könntest
diese Methode scheint nur die zugewiesenen Werte zu erfassen, nicht aber dynamisch veränderte Werte
Hallo Suit,
leider komme ich mit getComputedStyle wohl nicht weiter. Trotzdem vielen Dank für deine Antwort.
Martin
sry, oben fehlt ein d ;) deine elementreferenz
Wie geht es aber richtig?
du hast height niemals gesetzt, ohne height zu haben kannst du es schlecht lesen
document.getElementById('weee').height = '123';
alert(document.getElementById('weee').height);
wird dir den wert liefern, den du möchtest - das hilft dir in dem fall aber nicht
getComputedStyle() ist eine methode, die du dir ggf mal ansehen könntest
diese Methode scheint nur die zugewiesenen Werte zu erfassen, nicht aber dynamisch veränderte Werte
müsste ansich schon funktionieren, ansonsten ist wie molily sagt, offsetHeight eine möglichkeit mit der du die aktuelle höhe (berechnet) ausgeben kannst
getComputedStyle() ist eine methode, die du dir ggf mal ansehen könntest
diese Methode scheint nur die zugewiesenen Werte zu erfassen, nicht aber dynamisch veränderte Werte
Das stimmt nicht, wie kommst du darauf?
Verwechselst du getComputedStyle vielleicht mit dem style-Objekt? Für das gilt genau das, was du sagst: Man kann vorher gesetzte Inline-Styles auslesen, mehr nicht. Mit getComputedStyle kannst du hingegen den tatsächlichen aktuellen Wert auslesen, egal wie er zustande gekommen ist bzw. gesetzt wurde (er muss nicht gesetzt werden).
Wie gesagt kannst du auch einfach offsetHeight verwenden, aber getComputedStyle plus currentStyle für den IE ginge genauso.
Mathias
alert(document.getElementById("zelle").height);
Du suchst anscheinend http://de.selfhtml.org/javascript/objekte/all.htm#offset_height@title=offsetHeight bzw. eine Funktion zum Auslesen des aktuellen CSS-Eigenschaftswertes.
Mathias