GUI главное меню приложения

При открытии подпунктов в меню и при наступлении события mouseout на открытых пунктах и самом меню, на документ или на общий главный контейнер вешается обработчик события onclick или onmousedown. Вызов этого обработчика закрывает все пункты меню и приводит его (меню) в начальное состояние. Сам обработчик можно удалить с документа (или контейнера).