Помогите с меню
Доброго времени суток!
есть такой вот код function openbox(id){ display = document.getElementById(id).style.display; if(display=='block'){ document.getElementById(id).style.display='none'; document.getElementById('close').style.display='none'; }else{ document.getElementById(id).style.display='block'; document.getElementById('close').style.display='block'; } } а так же меню <div class="sidebar"> <ul> <li><a href="/" class="f_item"><span>»</span> Главная</a></li> <li><a href="/" class="f_item"><span>»</span> Медицинские услуги</a></li> <li><u onclick="openbox('pi'); return false" class="f_item click_menu"><span>»</span> подготовка к исследованиям</u> <ul class="open_menu" id="pi"> <li class="s_item"><span>»</span> <a href="/">Сбор мочи</a></li> <li class="s_item"><span>»</span> <a href="/">УЗИ</a></li> <li class="s_item"><span>»</span> <a href="/">Исследование на энтеробиоз</a></li> <li class="s_item"><span>»</span> <a href="/">Посев мокроты</a></li> <li class="s_item"><span>»</span> <a href="/">Холтеровское мониторирование</a> <ol> <li class="t_item"><span>-</span> <a href="/">Электроэнцефалография (ЭЭГ)</a></li> <li class="t_item"><span>-</span> <a href="/">Реоэнцефалография (РЭГ)</a></li> <li class="t_item"><span>-</span> <a href="/">Реовазография (РВГ)</a></li> <li class="t_item"><span>-</span> <a href="/">Функция внешнего дыхания (ФВД)</a></li> <li class="t_item"><span>-</span> <a href="/">Электрокардиография (ЭКГ)</a></li> </ol> </li> <li class="s_item"><span>»</span> <a href="/">Исследование мазка из зева</a></li> <li class="s_item"><span>»</span> <a href="/">Подготовка к фиброгастроскопии</a></li> <li class="s_item"><span>»</span> <a href="/">Подготовка к осмотру врачом-проктологом</a></li> <li class="s_item"><span>»</span> <a href="/">Подготовка к рентгену</a></li> <li class="s_item"><span>»</span> <a href="/">Подготовка к консультации гинеколога</a></li> </ul> </li> <li><a href="/" class="f_item"><span>»</span> Запись на прием</a></li> <li><u onclick="openbox('about'); return false" class="f_item click_menu"><span>»</span> О цкдд малыш</u> <ul class="open_menu" id="about"> <li class="s_item"><span>»</span> <a href="/">Об организации</a></li> <li class="s_item"><span>»</span> <a href="/">Наши новости</a></li> <li class="s_item"><span>»</span> <a href="/">Контакты</a></li> </ul> </li> <li><a href="/" class="f_item"><span>»</span> Фотогалерея</a></li> <li><a href="/" class="f_item"><span>»</span> Вакансии</a></li> <li><a href="/" class="f_item"><span>»</span> Прайс</a></li> <li><a href="/" class="f_item"><span>»</span> Форум</a></li> </ul> <div id="close" onclick="openbox('pi'); return false"></div> </div> когда нажимаешь на пункт меню подготовка к исследованиям открывается скрытое меню, а так же разворачивается фиксированный div #close на всю страницу, так чтобы при клике в любое место кроме меню, второе меню скрывалось. Как мне сделать так что бы можно использовать несколько таких вложенных меню, может на #close повесть через onclick чтобы у класса open_menu менялся display? |
AlertMod,
так? <!DOCTYPE HTML> <html> <head> <title>Untitled</title> <meta charset="utf-8"> <style type="text/css"> body{ background-color: #E0FFFF; margin: 0px; padding: 0px; } .open_menu { display: none; } .click_menu { cursor: pointer; } #close { display: none; position: absolute; width: 100%; height: 100%; top:0px; background-color: #000; opacity: 0.5; } </style> <script> function nextElementSibling(el) { do { el = el.nextSibling } while ( el && el.nodeType !== 1 ); return el; } var obj; document.onclick = function (event) { var target = (event && event.target) || window.event.srcElement; while (target != this) { if (target.className.indexOf('click_menu')!=-1) { obj && obj != nextElementSibling(target) && (obj.style.display = 'none'); obj = nextElementSibling(target); obj.style.display = obj.style.display != 'block' ? 'block' : 'none'; return; }; target = target.parentNode; }; target == this && obj && (obj.style.display = 'none') }; </script> </head> <body> <div class="sidebar"> <ul> <li><a href="/" class="f_item"><span>»</span> Главная</a></li> <li><a href="/" class="f_item"><span>»</span> Медицинские услуги</a></li> <li><u class="f_item click_menu"><span>»</span> подготовка к исследованиям</u> <ul class="open_menu" id="pi"> <li class="s_item"><span>»</span> <a href="/">Сбор мочи</a></li> <li class="s_item"><span>»</span> <a href="/">УЗИ</a></li> <li class="s_item"><span>»</span> <a href="/">Исследование на энтеробиоз</a></li> <li class="s_item"><span>»</span> <a href="/">Посев мокроты</a></li> <li class="s_item"><span>»</span> <a href="/">Холтеровское мониторирование</a> <ol> <li class="t_item"><span>-</span> <a href="/">Электроэнцефалография (ЭЭГ)</a></li> <li class="t_item"><span>-</span> <a href="/">Реоэнцефалография (РЭГ)</a></li> <li class="t_item"><span>-</span> <a href="/">Реовазография (РВГ)</a></li> <li class="t_item"><span>-</span> <a href="/">Функция внешнего дыхания (ФВД)</a></li> <li class="t_item"><span>-</span> <a href="/">Электрокардиография (ЭКГ)</a></li> </ol> </li> <li class="s_item"><span>»</span> <a href="/">Исследование мазка из зева</a></li> <li class="s_item"><span>»</span> <a href="/">Подготовка к фиброгастроскопии</a></li> <li class="s_item"><span>»</span> <a href="/">Подготовка к осмотру врачом-проктологом</a></li> <li class="s_item"><span>»</span> <a href="/">Подготовка к рентгену</a></li> <li class="s_item"><span>»</span> <a href="/">Подготовка к консультации гинеколога</a></li> </ul> </li> <li><a href="/" class="f_item"><span>»</span> Запись на прием</a></li> <li><u class="f_item click_menu"><span>»</span> О цкдд малыш</u> <ul class="open_menu" id="about"> <li class="s_item"><span>»</span> <a href="/">Об организации</a></li> <li class="s_item"><span>»</span> <a href="/">Наши новости</a></li> <li class="s_item"><span>»</span> <a href="/">Контакты</a></li> </ul> </li> <li><a href="/" class="f_item"><span>»</span> Фотогалерея</a></li> <li><a href="/" class="f_item"><span>»</span> Вакансии</a></li> <li><a href="/" class="f_item"><span>»</span> Прайс</a></li> <li><a href="/" class="f_item"><span>»</span> Форум</a></li> </ul> <div id="close" onclick="openbox('pi'); return false"></div> </div> </body> </html> |
Да, почти. только мне нужно чтобы при открытии меню, на весь экран открывался блок #close и в любое место кликнув меню закроется
вот пример |
AlertMod,
вариант выше добавлен - любой клик вне меню закроет вложенное меню - работает без id="close" |
рони,
Спасибо большое! |
А что бы в ie8 работало не подскажите?
|
Цитата:
|
Часовой пояс GMT +3, время: 09:28. |