Es posible que conozcas MenuMatic, un menú multinivel tanto horizontal como vertical realizado con Mootools 1.2. La verdad es que yo personalmente lo he usado ya varias veces y me gusta bastante la facilidad de uso y el acabado, con lo que es una de mis opciones cuando tengo que recomendar un menú.
Hace poco tuve un problema y es que coloqué este menú en una capa posicionada fija (position:fixed) de modo que estuviese constantemente visible aunque se realizase scroll. Claro, esto funciona en prácticamente todos los navegadores menos IE (para variar). Al hacer esto, cuando pasamos por encima del menú para realizar el desplegado, como la capa fija «evita» el scroll, el menú aparece siempre en la parte superior, de modo que si se baja por la página, el menú desaparece.
He hecho un par de cambios en la clase a partir de la última versión disponible, la 0.68.3. Se lo he comunicado al autor para ver si le ayuda en su próxima versión, pero de momento no he obtenido respuesta.
Por esta razón, dejo mi aportación aquí en el blog por si le puede servir a alguien. Las modificaciones que he realizado están bajo las líneas // Mod: Fran Naranjo. El cambio es básicamente detectar si está sobre una capa con position:fixed y si lo está, añadir el scroll a la posición en la que se muestra el menú.