Помогите разобраться со слоями!Огромнейшее спасибо за подробный ответ! Я пока совсем плохо разбираюсь во всем этом и поэтому Ваши советы многое прояснили для меня. Надеюсь с Вашей помощью понабраться побольше опыту и понимания в таких делах :)). К сожалению, менюшка не совсем заработала. Самое удивительное, что она корректно работает в NN6, на что я уже и не надеялась, а в IE работает не правильно.Когда с пункта убирается мышка скрывается только первая строчка слоя,а не весь слой.Какая-то загадка! Вот текст измененного меню. <script LANGUAGE="JavaScript"> <!-- Begin dom = (document.getElementById)? true : false; nn4 = (document.layers)? true : false; ie4 = (!dom && document.all)? true : false; var last_elem=null, g_iFadeTimer; function fnShowMenu(oMenuLink, oMenuDiv){
.window.clearTimeout(g_iFadeTimer); .HideMenu(); .if (dom) . { . document.getElementById(oMenuDiv).style.width = document.getElementById(oMenuLink).offsetWidth; . document.getElementById(oMenuDiv).style.filter = "alpha(opacity=100)"; . document.getElementById(oMenuDiv).style.left = document.getElementById(oMenuLink).offsetLeft; . document.getElementById(oMenuDiv).style.visibility = "visible"; . } else if (ie4) . { . document.all[oMenuDiv].style.width = document.all[oMenuLink].offsetWidth; . document.all[oMenuDiv].style.filter = "alpha(opacity=100)"; . document.all[oMenuDiv].style.left = document.all[oMenuLink].offsetLeft; . document.all[oMenuDiv].style.visibility = "visible"; } .last_elem = oMenuDiv; } function HideMenu(){ .if(last_elem != null){ .if (dom) { document.getElementById(last_elem).style.visibility = "hidden"; document.getElementById(last_elem).style.filter = "alpha(opacity=0)";} else if (ie4) { document.all[last_elem].style.visibility = "hidden"; document.all[last_elem].style.filter = "alpha(opacity=0)";} ..last_elem = null; .}} function hideall(){ if (dom) { document.getElementById("child").style.visibility = "hidden"; document.getElementById("child").style.filter = "alpha(opacity=0)";} else if (ie4) { document.all["child"].style.visibility = "hidden"; document.all["child"].style.filter = "alpha(opacity=0)";} .} . // End --> </script> </head>
<body onload=hideall();> <div id="popup_menu"> <span id="father" onmouseout="g_iFadeTimer = window.setTimeout('HideMenu();', 50);" onmouseover="fnShowMenu('father', 'child');" style="BACKGROUND:#cbcbcb"><font size=2 color=#0033cc><b> Пункт </b></font></span> </div> <div id="submenu"> <div id="child" onmouseover="fnShowMenu('father', 'child');" onmouseout="g_iFadeTimer = window.setTimeout('HideMenu();', 50);" style="background:#dcdcdc;position:absolute;"> <font size=2 color=#0033cc>Подпункт1</font> <br> <font size=2 color=#0033cc>Подпункт2</font> </div> </div> |