读书人

为啥会触发mouseout事件

发布时间: 2013-03-28 10:20:24 作者: rapoo

为什么会触发mouseout事件?
贴上源代码:
<script type="text/javascript" src="Scripts/jquery-1.4.1.js"></script>
<script type="text/javascript">
$(document).ready(function () {
$(".cont").mouseover(function () {
alert("over");
}).mouseout(function () {
alert("out"); });
});
</script>
<style type="text/css">
.cont
{
background-color: Red;
width: 300px;
height: 180px;
}
.cont table
{
width:260px;
height:100px;
}
</style>
</head>
<body>
<div class="cont">
<table border="1">
<tr>
<td>
</td>
<td>
</td>
<td>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
</td>
</tr>
<tr>
<td>
</td>
<td>


</td>
<td>
</td>
</tr>
</table>
</div>
</body>
</html>
疑问是,我鼠标在table上面晃的时候,为什么cont div的mouseout事件会触发?

[解决办法]
嗯,mouseout事件可能被同时绑定到了该容器的子元素上,所以你在table上晃,从td-tr-table-div,最多可以触发四个对象。
所以IE和各框架都提供了mouseenter和mouseleave或类似的功能,在内部晃就不去管它。

读书人网 >JavaScript

热点推荐