Home » , , , , » javascript drop down horizontal menu

javascript drop down horizontal menu

Unknown | 9:06 PM | 0 comments


this is a simple tutorial of how to make horizontal drop down menu with auto close time using javascript.
just follow this steps.

HTML code for the list items.

<ul id="drop">
<li><a href="#" 
onmouseover="mopen('m1')" onmouseout="mclosetime()">Home</a>
<div id="m1" 
onmouseover="mcancelclosetime()" onmouseout="mclosetime()">
<a href="#">HTML Drop Down</a>
<a href="#">DHTML Menu</a>
<a href="#">JavaScript DropDown</a>
<a href="#">Cascading Menu</a>
<a href="#">CSS Horizontal Menu</a>
</div>
</li>
<li><a href="#" onmouseover="mopen('m2')" onmouseout="mclosetime()">Download</a>
<div id="m2" onmouseover="mcancelclosetime()" onmouseout="mclosetime()">
<a href="#">ASP Dropdown</a>
<a href="#">Pulldown menu</a>
<a href="#">AJAX Drop Submenu</a>
<a href="#">DIV Cascading Menu</a>
</div>
</li>
<li><a href="#">Order</a></li>
<li><a href="#">Help</a></li>
<li><a href="#">Contact</a></li>
</ul>

Css Code To Customize Appearance Of the menu

 
#drop
{ 
margin: 0;
padding: 0;
z-index: 30;
} 
#drop li
{ 
margin: 0;
padding: 0;
list-style: none;
float: left;
font: bold 11px arial;
}
#drop li a
{ 
display: block;
margin: 0 1px 0 0;
padding: 4px 10px;
width: 60px;
background: #5970B2;
color: #FFF;
text-align: center;
text-decoration: none;
}
#drop li a:hover
{ 
background: #49A3FF;
}

#drop div
{ 
position: absolute;
visibility: hidden;
margin: 0;
padding: 0;
background: #EAEBD8;
border: 1px solid #5970B2;
}
#drop div a
{ position: relative;
display: block;
margin: 0;
padding: 5px 10px;
width: auto;
white-space: nowrap;
text-align: left;
text-decoration: none;
background: #EAEBD8;
color: #2875DE;
font: 11px arial;
}
#drop div a:hover
{ 
background: #49A3FF;
color: #FFF;
}

Finally JavaScript To control the closing time for the opened child list.
You can set the closing time out by editing this line of code.
var timeout    = 5000; as 5000 = 5 seconds.


<script type="text/javascript">
var timeout = 5000;
var closetimer = 0;
var ddmenuitem = 0;
// open hidden layer
function mopen(id)
{ 
// cancel close timer
mcancelclosetime();
// close old layer
if(ddmenuitem) ddmenuitem.style.visibility = 'hidden';
// get new layer and show it
ddmenuitem = document.getElementById(id);
ddmenuitem.style.visibility = 'visible';
}
// close showed layer
function mclose()
{
if(ddmenuitem) ddmenuitem.style.visibility = 'hidden';
}
// go close timer
function mclosetime()
{
closetimer = window.setTimeout(mclose, timeout); 
}
// cancel close timer
function mcancelclosetime()
{
if(closetimer)
{
window.clearTimeout(closetimer);
closetimer = null;
}}
// close layer when click-out
document.onclick = mclose; 
</script>


Share this article :

0 comments:

Post a Comment

Notice : Spam Comments Will Be Deleted

 
Copyright © 2012. CodeSlot - All Rights Reserved
Template By Phoenix.Elmasry
Powered By Blogger