|
|
|
| Необходимо реализовать скрытие и закрытие ссылок меню таким образом:
допустим вот меню:
1)
2)
а
б
с
3)
нужно чтобы при нажатии на пункт 2), открывались подменю а,б,с.
Ну и когда я осуществяю навигацию по а б с, это подменю не закрывалось.
Я пробовал делать через Onclick... style="display: none" ..style="display:block".., но у меня получалось что либо подпункты открываются и всегда открыты, либо открываються и когда нажимаю на пунк б, меню сворачиваеться.
Подскажите пожалуйста, как можно сделать нормально? | |
|
|
|
|
|
|
|
для: Smotritel
(14.04.2009 в 20:25)
| | Вариантов масса, вот например
<div id="menu" onmouseover="menu(this);">
<div><a href="#">1</a>
<div><a href="#">1.1</a><br />
<a href="#">1.2</a></div>
</div>
<div><a href="#">2</a>
<div><a href="#">2.1</a><br />
<a href="#">2.2</a><br />
<a href="#">2.3</a></div>
</div>
<div><a href="#">3</a>
<div><a href="#">3.1</a></div>
</div>
</div>
<script>
function block_none(e){
e.style.display = (e.offsetHeight) ? 'none' : 'block';
}
function menu(obj){
var obj = obj.getElementsByTagName('a');
var onclick_func = function(){
var obj = this.parentNode.childNodes;
for(var i = 0, len = obj.length; i < len; i++) if(obj[i].nodeName == 'DIV') block_none(obj[i]);
}
for(var i = 0, len = obj.length; i < len; i++) obj[i].onclick = onclick_func;
}
function none_(){
obj = document.getElementById('menu').childNodes;
for(var i = 0, len = obj.length; i < len; i++){
obj_2 = obj[i].childNodes;
for(var j = 0, len_2 = obj_2.length; j < len_2; j++) if(obj_2[j].nodeName == 'DIV') block_none(obj_2[j]);
}
}
none_();
</script>
|
function none_(){
obj = document.getElementById('menu').childNodes;
for(var i = 0, len = obj.length; i < len; i++){
obj_2 = obj[i].childNodes;
for(var j = 0, len_2 = obj_2.length; j < len_2; j++) if(obj_2[j].nodeName == 'DIV') block_none(obj_2[j]);
}
}
none_();
|
Не нужно, если пропишете, к примеру через CSS display:none
Просто мне, нужно было именно так. | |
|
|
|
|
|
|
|
для: mikha
(14.04.2009 в 21:54)
| | Спасибо большое за вариант!
Но у меня при открытии подменю, оно открываеться и быстро закрываеться, быстро так мелькает. Не могу понять почему так:(:(
И это происходит когда я вместо знака # в href подставляю ссылку на нужную страницу, тоесть когда решетки, меню работает нормально.. но мне нужны ссылки со смыслом. | |
|
|
|
|
|
|
|
для: Smotritel
(14.04.2009 в 22:54)
| | Не поверите, но решётки я подставил только отправляя вам.
У меня вполне реальные ссылки.
Вот ещё. Но там на списках. С помощью CSS приведёте к нужному вам виду.
http://www.softtime.ru/forum/read.php?id_forum=4&id_theme=61449 | |
|
|
|