|
|
|
| Привет всем.
Сел делать выпадающее меню. Узнал много нового :-) Сейчас проблема в следующем:
На omMouseOver главного меню вызывается отображение DIV со сформированными пунктами. Следовательно по onMouseOut cкрываю все DIV с определенным CLASS. Механизм динамичности отработан, осталось дело за малым - если увожу мышку с главного меню на выпадающий список, его бы не нужно скрывать. А как- даже идей нет. Может кто подскажет чего-то умного ? | |
|
|
|
|
|
|
|
для: larush2
(07.12.2011 в 09:42)
| | если увожу мышку с главного меню на выпадающий список
===================================================
выпадающий список - такой же элемент как и главный список, на нем тоже действуют события onMouseOver и onMouseOut | |
|
|
|
|
|
|
|
для: elenaki
(07.12.2011 в 10:46)
| | ну это понятно, НО
есть 2 пункта меню <А> и под ними споизиционированы 2 невидимых <DIV>. Предполжим что навели на 1 пункт, в вызове функции я передал его ID=1, в функции прибавил к mmenu и получил id = mmenu1, у которого и меняю свойство display=block. Все работает. Теперь увожу мышку с пункта меню, DIV исчезает ... веду мышку дальше и навожу чере 2-3 пикселя на скрытый уже блок. Если ему присвоить omMouseOver с проявлением слоя, то он будет проявляться и без предварительного клика на главном меню. Разве не так ? | |
|
|
|
|
|
|
|
для: larush2
(07.12.2011 в 11:25)
| | у меня кроме собственно showMenu() и hideMenu() для этого использовались функции
function initiateHideMenu(){
tm=setTimeout("hideMenu()",200) // 1 second delay to close a submenu
}
function cancelCloseMenu(){
if(self.tm) clearTimeout(tm) // cancel delayed closing
}
|
| |
|
|
|
|
|
|
|
для: elenaki
(07.12.2011 в 13:40)
| | Совсем запутался. Можно кусок кода ? Не пойму как работать с переменной tm
function hide_popup(){
tm=setTimeout("hide_popup1()",200); // 1 second delay to close a submenu
}
function hide_popup1(){
var divs = document.getElementsByTagName('div')
var l = divs.length
for(var i=0; i<l; i++){
if(divs[i].className == 'mpop_block'){
divs[i].style.display="none";
}
}
}
|
| |
|
|
|
|
 8.6 Кб |
|
|
для: larush2
(07.12.2011 в 15:03)
| | у меня остался от тех времен только греческий вариант. надо? тогда в аттаче. | |
|
|
|
|
|
|
|
для: elenaki
(07.12.2011 в 16:52)
| | Рассмотрю вариант попозже, пока что сделал просто- поднял слой с меню выше, не стало пробела между блоком главного меню и выпадающего слоя. На нижележащий общий слой назначил функции закрытия окон по onMouseOver | |
|
|
|