Есть ли причина, по которой вы хотите сделать это специально с JS? Эффекты, анимация и т. Д.
Не уверен, что вы просто пытаетесь отобразить подменю при наведении, потому что вы можете сделать это исключительно с помощью CSS (и без добавления уникальных идентификаторов в каждый вложенный неупорядоченный список). Вы должны установить отображение вложенного списка на «none» и при наведении указателя мыши на элемент «li» родительского списка вы можете изменить отображение на «block».
#nav li.dropdown ul { display: none; }
#nav li.dropdown:hover ul { display: block; }
Опять же, не уверен, что вы хотите использовать JS специально. Но, по крайней мере, с этим маршрутом пользователь все равно увидит выпадающий список в случае, если у него отключен JS (что мы надеемся, что нет!).