Normally I\'m doing it this way:
for(i=0;i
You could count siblings... The childNodes list includes text and element nodes-
function whichChild(elem){ var i= 0; while((elem=elem.previousSibling)!=null) ++i; return i; }