The problem:
When you have mouseover and mouseout events bound to some element on you page with children elements. Hovering over children element fires parent’s mouseover and/or mouseout event.
The solution:
The solution to this error is to use mouseenter and mouseleave events instead of mouseover and mouseout.
The reason:
This solution works because mouseover and mouseout events do not bubble from child to parent element.
thanks http://jquery-howto.blogspot.com/2009/04/problems-with-jquery-mouseover-mouseout.html
Code
<html>
<head>
<title>Bind Multiple Event Handlers</title>
<style type="text/css">
.divOne{
height:40px;
width:100px;
background-color:#808080;
}
</style>
<script language="javascript" type="text/javascript"
src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js">
</script>
<script language="javascript" type="text/javascript">
$(function() {
$('.divOne').bind({
mouseenter: function() {
$(this).css("background-color", "#f0f0f0");
},
mouseout: function() {
$(this).css("background-color", "#808080");
},
click: function() {
alert("Div was clicked");
}
});
});
</script>
</head>
<body>
<form>
<div class="divOne">
</div>
</form>
</body>
</html>