Hola.
Debes considerar que en algunos navegadores, uyn salto de línea o un espacio en blanco es un nodo de texto (especialmente navegadores mozilla)... Debes asegurarte que no sea el caso, tal vez con un bucle, consultando por ejemplo el nodeType o tagName...
Saludos