return false, Влияет на вложенные меню
Вот столкнулся с такой проблемой подскажите как это решить
Вот html <ul class="base" id="base"> <li> <a href="">главное меню 1</a> <ul class="group" id="group"> <li> <a href="">под меню 2</a> </li> <li> <a href="">под меню 2</a> </li> <li> <a href="">под меню 2</a> </li> </ul> </li> </ul> А вот код javascript:
l.onclick = function(){
var el = document.getElementById('group')
var el2 = document.getElementById('base')
el2 = el2.childNodes[1]
el2 = el2.childNodes[1]
alert(el2)
if(el.style.display == "block")
{
el.style.display = ""
return false;
}
if(el.style.display == "")
{
el.style.display = "block"
return false;
}
}
Видите-ли всё получается, тоесть при клике менюшка сворачивается и разворачивается, но при этом я хочу чтобы в первом меню, ссылка несрабатывала, поетому return false, а получается что и вложенные меню тоже "Подхватывают" этот return false, в скрипте же всё остальное выводится в цикле, поетому пришлось добиратся до нужных элементов вот таким способом, какой наиболее лёгкий и грамотный способ? |
ну так добавите для первого элемента условие
|
всмысле, какое условие, что именно?
|
Цитата:
if(элемент !== первый элемент) {
//тут остальной код.
}
|
И вобще для чего такие извращения?
|
извините, но я что-то недогнал, что это за проверка
я буду благодарен если можете показать маленький пример "НЕ ИЗВРАЩЁННОГО КОДА", Просто видите-ли там в цилке скрипт выводит менюшку, каким образом например я могу одной из менюшек <li>, добавить id, ?? |
<ul id="menu">
<li><a href="#">main</a></li>
<li style="display: none;">
<ul>
<li><a href="#">1-st</a></li>
<li><a href="#">2-nd</a></li>
<li><a href="#">3-rd</a></li>
</ul>
</li>
</ul>
<script>
var menu = document.getElementById('menu'),
child = menu.getElementsByTagName('li');
child[0].onclick = function() {
child[1].style.display = child[1].style.display === 'block' ? 'none' : 'block';
return false;
};
</script>
пример |
Рахмет братец!!!!
ща заюзаю что-то я недодумался =))) |
| Часовой пояс GMT +3, время: 03:58. |