Ah - jetzt ist mir klar, was du willst - Die Höhe auslesen, damit du sie nicht jeweils in den Array heights schreiben musst. Bin fast sicher, dass DAS nicht geht, weil du ja nur die CSS-Eigenschaft ausliest und nicht die tatsächliche Höhe (was z.B. beim window-objekt möglich ist).
Bei allen anderen Objekten dürfte es nicht gehen. Allerdings ist deine Variante auch nicht sehr "elegant" gelöst, denn du gehst davon aus, dass alle User mit Standard Schriftgrad surfen. Sobald aber jemand einen grösseren Schriftgrad gewählt hat, reicht deine voreingestellte Höhe nicht mehr aus und es schiebt die Inhalte übereinander.
Wäre es evtl daher eine bessere Lösung, das Ganze mit Listen zu lösen (<ul>) und je nach Status mit CSS display: none; bzw. display: block; anzeigen zu lassen?
So würdest du einerseits das "heights-"Problem umgehen und andererseits könntest du dasselbe ganz ohne JavaScript realsieren. Nebenbei würdest du auf die Tabellen, bzw. TDs verzichten...