简单了解mouseover与mouseenter的使用场景
我们知道鼠标经过和离开的事件有俩种:
mouseenter与mouseover,那么这里俩个事件有什么区别呢?
mouseenter:给谁注册的事件,就必须经过谁,才能触发该事件
简单来说mouseenter不能冒泡,也就是说经过其子盒子,不会触发它的事件
而mouseover刚好相反,因为mouseover会冒泡。所以当你经过它的子盒子它也会触发相应事件:
<style>*{margin: 0;padding: 0;}div{position: relative;margin-top: 50px;margin-left: 50px;width: 300px;height: 300px;background-color: aquamarine;}a{position: absolute;top: 50%;left: 50%;transform: translate(-50%,-50%);display: block;width: 100px;height: 100px;border: 5px solid #000;padding: 5px;background-color: brown;}em{position: absolute;top: 5000px;} </style> <body><div><a href="javascript:;">son</a>father</div> </body> <script> const div = document.querySelector('div') const a = document.querySelector('a') div.addEventListener('mouseover',function(){console.log('触发了div');this.style.backgroundColor = 'blue' }) </script>
当鼠标经过son时,必然会先经过father,经过father触发了一次,经过son因为冒泡原理又触发了一次father:
如果我们使用mouseenter呢?
const div = document.querySelector('div') const a = document.querySelector('a') div.addEventListener('mouseenter',function(){console.log('触发了div');this.style.backgroundColor = 'blue' })
当鼠标经过son时,必然会先经过father,经过father触发了一次,经过son之后,因为mouseenter不能冒泡,所以没有触发father:
我们可以根据实际情况来判断到底使用哪种鼠标经过事件
mouseenter --> 鼠标经过(不冒泡) | mouseleave -->鼠标离开(不冒泡) |
mouseover -->鼠标经过(冒泡) | mouseout -->鼠标离开(冒泡) |
简单了解mouseover与mouseenter的使用场景相关推荐
- jQuery面试题-区别mouseover和mouseenter的不同之处(看了也许对你有好处)
文章目录 1.简单阐述mouseover和mouseenter的不同之处 2.代码实例测试 3.效果图 1.简单阐述mouseover和mouseenter的不同之处 mouseover:在移入子元素 ...
- java mouseenter_关于事件mouseover ,mouseout ,mouseenter,mouseleave的区别
最近在做的在线考试和课程商城都遇到这样的问题:就是鼠标滑过的时候出现一个层,当鼠标滑到当前层的话mouseover和mouseout在低版本的浏览器会出现闪动的现象,解决这个现象的办法有许多,不过我觉 ...
- JavaScript中的mouseover与mouseenter,mouseout和mouseleave的区别
1.mouseover与mouseenter mouseover事件:不论鼠标指针穿过被选元素或其子元素,都会触发 mouseover 事件. mouseenter事件:只有在鼠标指针穿过被选元素时, ...
- 鼠标事件(mouseover和mouseenter)
下拉菜单案例 前言 一.mouseover和mouseenter的不同点 1.事件的触发时机 2.是否支持冒泡 二.案例 总结 前言 自己做下拉菜单的时候,突然发现mouseover和mouseent ...
- mouseover和mouseenter的异同
引言 在自己动手练习一些项目实例的时候,发现mouseover和mouseenter这俩事件功能有点相似,但应用场景却不同. 所以想整篇博客梳理梳理 mouseover和mouseenter的不同点: ...
- JavaScript---常用的鼠标事件mouseover 和mouseenter的区别
一. mouseover 和mouseenter的区别 mouseover: 只要鼠标指针移入事件所绑定的元素或其子元素,都会触发该事件 mouseenter: 只有鼠标指针移入事件所绑定的元素时, ...
- mouseover与mouseenter,mouseout和mouseleave的区别
mouseover与mouseenter,mouseout和mouseleave的区别 Introdece 想起来这个就来气.举个例子,做轮播图的时候,当鼠标移动到前后的按钮的时候要清除掉定时器.我的 ...
- mouseover与mouseenter,mouseout与mouseleave的区别
mouseover与mouseenter 不论鼠标指针穿过被选元素或其子元素,都会触发 mouseover 事件. 只有在鼠标指针穿过被选元素时,才会触发 mouseenter 事件. mouseou ...
- Unity3d 简单的小球沿贝塞尔曲线运动(适合场景漫游使用)
简单的小球沿贝塞尔曲线运动,适合场景漫游使用 贝塞尔曲线:(贝塞尔曲线的基本想法部分摘自http://blog.csdn.net/u010019717/article/details/4768 ...
- mouseover、mouseenter
mouseover.mouseenter 相信大家刚开始学mouseover和mouseenter的时候,总感觉这两个效果是一样的! 但是仔细一想,既然是一样的,那么为什么要写两个呢? 那么问题就来了 ...
最新文章
- C++中的动态内存分配
- ubuntu查看文件和文件夹大小
- C#项目打包,并自动安装SQL数据库(转)
- PowerDesigner 反向工程生成ER图
- 如何在Word,Excel和PowerPoint 2010中裁剪图片
- java public object_Java中Object类
- 计算机组成原理pd指令是什么,计算机组成原理期中考试(DOC).doc
- clientv3 github.com与go.etcd.io冲突 /github.com/coreos/etcd/clientv3/auth.go:166:106: too many errors
- Day_05 显示字符串
- ZYNQ研究----(2)基于开发板制作串口测试程序
- 嵌入式单片机及外设(硬件)知识基础一
- 矢量数据 秦岭淮河_秦岭-淮河一线的大致纬度
- js 模拟表单post提交
- 翟菜花:当防沉迷遇到职业电竞,我们能怎么办?
- elasticsearch7.6 词频统计
- cad设计草图_草图和乐高积木如何启动您的设计系统
- 用 bat 批处理命令启动 Android Studio 自带模拟器
- SQL语言和T-SQL语言简介
- 通过jsp向mysql批量导入数据_对大数据的批量导入MySQL数据库
- 2018 年最受欢迎的美国公司 Top 50,亚马逊卫冕!
热门文章
- 泰坦尼克号数据集的下载
- java 读取文件成字节数组_java读取文件为字节数组
- 甘特图控件VARCHART XGantt:XGantt的用途
- php 抽签,javascript随机抽签程序
- 编译bug can not be used when making a shared object; recompile with -fPIC
- 保护眼睛——设置WIN7和XP 窗体、Chrome、IE网页背景颜色
- 7-77 打印学生选课清单 (25分)
- html文字冒险游戏,小说新类型介绍之文字冒险游戏
- reflections歌词翻译_Reflections中文歌词
- RIP总结(转自鸿鹄论坛)