<a> son vínculos y no botones, revisa el código, hay errores de sintaxis, puedes comprobarlo con firebug en firefox, como dije anteriormente,
los elementos UL no poseen la propiedad "li", contienen los LI pero en el arreglo
childNodes y estos a su vez contendrán los <a> en sus childNodes
siento no poder ayudarte, a mi criterio el código no tiene lógica aparente