Hallo Daniel,
<ul id="testUl">
schau mal hier_____^^
<li><a href="test1.html">Test 1</a></li>
<li><a href="test2.html">Test 2</a></li>
<li><a href="test3.html">Test 3</a></li>
</ul>
Für den IE unter Windows müsste das so stimmen, wie du es schreibst, die anderen Browser, ich glaube auch der IE am Mac interpretieren einen Umbruch im Quellcode als eigenen Textnode. Da ist das erste List-Item dann also nicht firstChild, sondern childNodes[1], das zweite nicht childNodes[1] sondern childNodes[4] usw.
Gruß Gernot