вопрос по реализации 2-х уровнего меню
Хочу реализовать меню на javascript чтобы при нажатии по ссылке открывалось подменю, а при нажатии на одну из ссылок в подменю открывался еще блок меню. меню первого уровня я реализовал (нажимаю на меню открывается подменю), а когда я пытаюсь нажать на ссылки уже этого подменю все пропадает.
Вот мой код яваскрипт: function navigation() { var pop = document.getElementById('pop'); var more = document.getElementById('more'); var pop1 = document.getElementById('pop1'); var mote = document.getElementById('mote'); pop.onmouseover = show; more.onmouseover = show; pop.onmouseout = hide; more.onmouseout = hide; pop1.onmouseover = show1; mote.onmouseover = show1; pop1.onmouseout = hide1; mote.onmouseout = hide1; } function show() { var menu = document.getElementById('pop'); var submenu = document.getElementById('more'); submenu.style.display = 'block'; submenu.style.width = '149px'; } function show1() { var sub = document.getElementById('pop1'); var subm = document.getElementById('mote'); subm.style.display = 'block'; subm.style.width = '149px'; } function hide() { var menu = document.getElementById('pop'); var submenu = document.getElementById('more'); submenu.style.display = 'none'; } function hide1() { var sub = document.getElementById('pop1'); var subm = document.getElementById('mote'); subm.style.display = 'none'; } функция navigation выполняется по событию windows.onload напрямую из html |
Vempel,
Есть тут на jQuery с произвольным уровнем вложенности |
А как реализовать мою задачу на javascript. В каком направлении думать. Заранее благодарен.
|
Vempel,
Ну собственно пример на JQ - может наведёт на мысли ? - алгоритмы то наверно можно перенести ? http://javascript.ru/forum/dom-windo...tml#post182559 пост 21 |
события всплывают, приведите полный код вашего меню и здесь есть кнопочка посмотреть [html run]
|
HTML код меню
<div id="nav"> <ul> <li><a href="index.html">Домой</a></li> <li><a id="pop" href="resourse.htm">Материалы</a></li> <li><a href="gallery.htm">Галерея</a></li> <li><a href="contacts.htm">Контакты</a></li> </ul> </div> <div id="more"> <a href="articles.htm">Статьи</a> <br /> <a id="pop1" href="rukovodstva.htm">Руководства</a> </div> <div id="mote"> <a href="node.htm">Статья 1</a><br /> <a href="bode.htm">Cтатья 2</a> </div> |
СSS код
Код:
div#nav li { |
и ещё момент, просите по нажатию, а код по наведению
|
Ну это понятно вместо onmouseover будет onclick вопрос в том, что при наведении на меню открывается подменю, а при наведении на пункт уже подменю открвывается еще подменю но уже кликнуть по нему либо повыбирать его пункты возможности нет. Понимаю, что где то ошибка в Javascript коде, а в чем конкретно разобраться не могу. Заранее благодарен за любую помощь.
|
Часовой пояс GMT +3, время: 22:04. |