Open the menu by clicking menu.html. The source code can be downloaded and saved, generally by CTRL-U, control u, to view the page source, in most browsers.
The menu is extensively commented to explain what it does, but it is simple. It permits submenus of arbitrary depth (sub sub sub menus...). The menu uses standard unnumbered lists, and tracks sub menus simply by whether they are embedded -- if you start a new menu without closing the previous menu, you have a submenu. You can have menus open by default or not. The code assumes that circles and discs are used to indicate open and closed menus, respectively, but this can be suppressed for any or all of the lists. Indeed, it is suppressed on the top level menu at the upper left: click on Menu 0.
The menu system uses clicks to open or close submenus. My previous versions used mouse or hover actions, but these are not very mobile friendly. Moreover, opening submenus by hover has the problem that either they stay open or the whole menu shifts when they close. Both are a navigational nuisance. The highest level menu can open and close by hover, but all submenus require clicks to open or close. After spending time with it, I turned off the hover because mostly it doesn't do what I want on either desktop or mobile.