Utilice el "MouseEnter" y "mouseleave" en el div padre en su lugar - los elementos secundarios no afectará a la "MouseLeave"
document.getElementById('Main_Menu_Container_Div').addEventListener('mouseenter',function(){
// do something like your 'slideup' or what ever you want.
});
"evento de propagación" como se le conoce, es el problema - " evento en element2 tiene prioridad. Esto se llama evento de burbujeo ". http://www.quirksmode.org/js/events_order.html
Uso Ejemplo:
<style>
.Child_Div_Button{
float:left;
cursor:pointer;
height:100px;
width:100px;
background-color:#CCC;
border:#000 thin solid;
margin:2px;
padding:2px;
}
.Child_Div_Button:hover{
background-color:#FFF;
}
</style>
</head>
<body>
<div id="Parent_Div_Container" style="height:300px; width:300px; border:#333 thin solid; background-color:#D2FFFF;">
Parent Div
<div id="button_container">
<div class="Child_Div_Button">
Button 1 Child Div
</div>
<div class="Child_Div_Button">
Button 2 Child Div
</div>
</div>
</div>
<script type="text/javascript">
document.getElementById('button_container').style.display = 'none';// initiate
document.getElementById('Parent_Div_Container').addEventListener('mouseenter',function(){
document.getElementById('button_container').style.display = 'block';
});
document.getElementById('Parent_Div_Container').addEventListener('mouseleave',function(){
document.getElementById('button_container').style.display = 'none';
});
</script>
Parece que funciona en la última versión de Firefox sin necesidad de jQuery - Pero Chrome, IE y Safari, todos parecen necesitar la biblioteca jQuery para que esto funcione. ¿Es eso decir que mozila ahora es totalmente compatible con el uso de mouseenter y mouseleave?!?! Si es así ... ¡SÍ! para el navegador que realmente hace cosas para ayudar a los desarrolladores:)
Gracias por todas las respuestas rápidas, la respuesta aceptada terminó siendo la mejor solución. –