На этом месте находится расчудесная шапка. Включите flash - не пожалеете!

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в эту темуОткрыть новую тему
> JavaScript: выпадающее меню
iluha@iluha.ru
сообщение 11.8.2007, 10:22
Сообщение #1


JavaScript.medved.shatun
****

Группа: Модераторы
Сообщений: 644
Регистрация: 9.2.2007
Из: Москва

Пользователь №: 2 893



Репутация:   42  


Вообще вся задача создания выпадающих меню сводится к трем пунктам:
1. создание самих меню и задание им начального параметра visibility: hidden;
2. описание события для основного меню, то есть при каком действии должно выпадать меню.
3. создание скрипта который будет изменять по какому-то событию параметр visibility: hidden; на visibility: visible; и обратно.


1. К каждому из выпадающих пунктов меню создаётся DIV в котором указывается помимо visibility: hidden; ещё и его местоположение, то есть position: ...; z-index: ...; left: ...; top: ... Таки образом собственно получается, что нет разницы между горизонтальным меню и вертикальным - главное точно указать его координаты, где каждая менюшка должна появляться. Каждому DIV присваивается какой-то уникальный id, например id="submenu1"

2. Каждому пункту меню назначается событие по которому будет выполняться функция отображения выпадающего меню и скрытие остальных выпавших меню при подносе к другим пунктам заглавного меню.
onmouseOver="java script:showmenu(тутномерпунктаменю);"

3. Ну а скрипт в HEAD страницы очень прост:
<script language="JavaScript">
function showmenu(LayerId)
{
//количество выпадающих подменюшек
var quantityofsub = 10,
i;

//цикл на закрытие всех ранее возможно открытых подменюшек
for(i=0;i<quantityofsub+1;i++) {
document.getElementById(1).style.visibility='hidden';
}
//ну и собственно открытие того пункта подменю, который нужен
document.getElementById(LayerId).style.visibility='visible';
}
</script>


--------------------
Ничего не скрою - бегаю трусцой(ю)!

ВНИМАНИЕ: Если вы решили сказать мне спасибо за помощь, добавив + к Репутации, то убедительная просьба - ставить этот + ТОЛЬКО после того, как проблема будет ПОЛНОСТЬЮ решена.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия Сейчас: 22.11.2008, 2:31
Продаются кофемашины недорого, кулеры у нас.
Rambler's Top100 Яндекс цитирования