getElementsByTagName wäre eine Möglichkeit; oder auch ausgehend vom firstChild so lange das "nächste" [1] (resp. vorherige, vom lastChild; oder gleich childNodes) Kindelement zu betrachten, bis eines mit einem anderen nodeType als #text kommt.
Performanter wären:
el.lastElementChild (soll standardisiert werden, aber noch nicht breit unterstützt)
var c = el.el.children; c[c.length -1] (nicht standardisiert, aber schon lange breit unterstützt)
Erst wenn die nicht zur Verfügung stehen, würde ich childNodes von hinten durchlaufen.
Am besten schreibt man sich eine kleine Bibliothek, die einem solche grundlegenden DOM-Operationen vereinfacht, wie es Christian Heilmann mit DOMhelp in seinem Buch »Beginning JavaScript with DOM Scripting and Ajax« vorgemacht hat.
Mathias