mouseover与mouseenter的区别
类别:Web前端 浏览量:325
时间:2014-6-28 mouseover与mouseenter的区别
mouseover与mouseenter的区别对于mouseover事件来说 ,当鼠标从其他元素 移动到 child节点时发生,但此事件会冒泡 所以会导致 parent 也出发mouseover。如果我们对 parent注册了 mouseover监听,从 parent移动到child 同样出发parent的mouseover。
mouseenter 是 不冒泡的事件,这时候 如果注册的监听 是mouseenter的话 无论鼠标从任何元素 移动到child时 只有child元素 发生mouseenter事件 而其祖宗节点 都不会因为冒泡 而触发此事件。
一、mouseover与mouseenter的区别
Mouseover:不论鼠标指针穿过被选元素或其子元素,都会触发 mouseover 事件。
Mouseenter:只有在鼠标指针穿过被选元素时,才会触发 mouseenter 事件。
二、实例
<html>
<head>
<script type="text/javascript" src="jquery的路径"></script>
<script type="text/javascript">
x=0;
y=0;
$(document).ready(function(){
$("li.over").mouseover(function(){
$(".over span").text(x+=1);
});
$("li.enter").mouseenter(function(){
$(".enter span").text(y+=1);
});
});
</script>
</head>
<body>
<p>不论鼠标指针穿过被选元素或其子元素,都会触发 mouseover 事件。</p>
<p>只有在鼠标指针穿过被选元素时,才会触发 mouseenter 事件。</p>
<li class="over" style="background-color:lightgray;padding:20px;width:40%;float:left">
<h2 style="background-color:white;">被触发的 Mouseover 事件:<span></span></h2>
</li>
<li class="enter" style="background-color:lightgray;padding:20px;width:40%;float:right">
<h2 style="background-color:white;">被触发的 Mouseenter 事件:<span></span></h2>
</li>
</body>
</html>
热门推荐
- docker网络通信(Google和Facebook不使用Docker的原理解析)
- mysql安装时服务无法启动(MySQL 实例无法启动的问题分析及解决)
- vue接口请求类封装(Vue接口封装的完整步骤记录)
- sqlserver函数条件判断(Sql Server 开窗函数Over的使用实例详解)
- mysql数据类型及用法(MySQL数据库重命名的快速且安全方法3种)
- laravel 获取数据库操作异常(Laravel Eloquent ORM 多条件查询的例子)
- mysql一次查询的过程(一篇文章弄懂MySQL查询语句的执行过程)
- dedecms添加底部链接(织梦dedecms调用得到文章所属的副栏目id及副栏目名称的教程)
- python numpy数组拼接(Python快速转换numpy数组中Nan和Inf的方法实例说明)
- mongodb中mapreduce实例