鼠标的移入、移出事件

article/2025/10/19 23:08:03

目录

一、mouseover和mouseenter

 二、mouseout和mouseleave

三、重点总结


在原生JS中鼠标移入移出事件有四个,分别为mouseover ,mouseout ,mouseenter,mouseleave,其中mouseovermouseenter为移入事件,mouseoutmouseleave为移出事件,那么问题来了,这每组事件之间究竟有什么区别呢?

一、mouseover和mouseenter

mouseover: 只要鼠标指针移入事件所绑定的元素或其子元素,都会触发该事件
mouseenter: 只有鼠标指针移入事件所绑定的元素时,才会触发该事件

 换句话说就是,如果一个元素没有子元素,那么该元素绑定mouseover或者mouseenter两种事件效果没有区别,鼠标每次移入元素时都只会触发一次事件;如果绑定了mouseover事件的元素存在子元素,那么,每次移入该元素时都会触发一次事件(包括从外部移入和从子元素移入),移入子元素时也会触发一次事件。

举个简单例子~

<div class="box over" onmouseover="over()"><span>over</span>
</div><div class="box enter" onmouseenter="enter()"><span>enter</span>
</div>
// mouseover事件
function over() {console.log('触发了mouseover事件!');
}// mouseenter事件
function enter() {console.log('触发了mouseenter事件!');
}

测试效果如下图所示:

 二、mouseout和mouseleave

这两者对比原理与mouseovermouseenter是一致的,如果上面理解了,那么这个也就理解了。

mouseout: 只要鼠标指针移出事件所绑定的元素或其子元素,都会触发该事件
mouseleave: 只有鼠标指针移出事件所绑定的元素时,才会触发该事件

换句话说就是,如果一个元素没有子元素,那么该元素绑定mouseout或者mouseleave两种事件效果没有区别,鼠标每次移出元素时都只会触发一次事件;如果绑定了mouseout事件的元素存在子元素,那么,每次移出该元素时都会触发一次事件(包括移出至外部移出至子元素),从子元素移出时也会触发一次事件。

举个简单例子~

<div class="box out" onmouseout="out()"><span>out</span>
</div><div class="box leave" onmouseleave="leave()"><span>leave</span>
</div>
// mouseout事件
function out() {console.log('触发了mouseout事件!');
}// mouseleave事件
function leave() {console.log('触发了mouseleave事件!');
}

测试效果如下图所示:

通过以上图文详解,相信你已经能清楚这些事件之间的区别了吧!如果你看完还是有疑问的话,请戳→此处←亲身体验吧~

三、重点总结

① 只要鼠标指针移入(或移出)事件所绑定的元素或其子元素,都会触发mouseover(或mouseout)事件
② 只有鼠标指针移入(或移出)事件所绑定的元素时,才会触发mouseenter(或mouseleave)事件


http://chatgpt.dhexx.cn/article/Ldk7OSCk.shtml

相关文章

软件测试:测试过程和方法

1 测试过程 1.1 测试阶段划分 测试阶段划分&#xff1a;需求测试&#xff08;重点&#xff09;、单元测试、集成测试、系统测试&#xff08;重点&#xff09;、验收测试、回归测试 需求测试 定义&#xff1a;通过评审来测试需求&#xff08;通过不同级别不同类型的评审来避免…

软件测试的流程?

一、需求调研 1. 委托方提供资料 A. 填写测试委托申请表 B. 操作手册 C. 开发需求规格说明书 D. 开发合同及招标文件等 2. 双方技术沟通确定测试具体内容&#xff0c;如功能性测试、性能效率测试、信息安全性测试、兼容性测试、可靠性测试等。 3. 我方给出测试方案及报价…

软件测试流程五个阶段

软件测试按照研发阶段一般分为5个部分&#xff1a;单元测试、集成测试、确认测试、系统测试、验收测试&#xff0c;下面将不同阶段需要的一些工作内容做一下梳理希望可以帮助到大家。 //No.1// 单元测试 单元测试又称为模块测试&#xff0c;是针对软件设计的最小单位程序模块进…

软件测试的概括及流程

一、什么是软件测试&#xff1f; 软甲测试就是用来确认一个程序的品质或性能是否符合开发之前所提出的一些要求&#xff0c;软件测试就是在软件投入运行前&#xff0c;对软件进行需求分析、设计规格说明和编码的最终复审&#xff0c;是软件质量保证的关键步骤。 软件测试是为了…

软件测试的几种方法

1、从是否关心内部结构来看 (1)白盒测试&#xff1a;又称为结构测试或逻辑驱动测试&#xff0c;是一种按照程序内部逻辑结构和编码结构&#xff0c;设计测试数据并完成测试的一种测试方法。 (2)黑盒测试&#xff1a;又称为数据驱动测试&#xff0c;把测试对象当做看不见的黑盒…

软件测试的流程

测试需求&#xff1a;需求分析&#xff0c;以软件开发需求为基础&#xff0c;形成可以测试的内容 测试计划&#xff1a;安排时间&#xff0c;人员&#xff0c;测试工具&#xff0c;手法&#xff0c;测试范围 测试设计&#xff1a;测试用例 执行阶段&#xff1a;根据用例去测…

软件测试的几个关键步骤,你需要知道

记得2年前刚毕业的时候听说了软件测试这个行业&#xff0c;当时也去百度仔细进行了一番搜索&#xff0c;评价基本千篇一律的看好。 看好的原因在于&#xff0c;专家认为未来的互联网市场用户体验至上&#xff0c;而产品质量与用户体验有紧密的联系&#xff0c;自从近年产品经理…

软件测试的工作流程是什么?只需5个步骤

前言 不同类型的软件产品测试的方式和重点不一样&#xff0c;测试流程也会不一样。同样类型的软件产品&#xff0c;不同的公司所制定的测试流程也会不一样。虽然不同软件的详细测试步骤不同&#xff0c;但它们所遵循的最基本的测试流程是一样的。 分析测试需求 测试人员在制…

自动化软件测试流程的七个步骤和内容

前言 自动化测试一般是指软件测试的自动化技术&#xff0c;自动化 软件测试流程 是把以人为驱动的测试行为转化为机器语言执行的一种过程。通常&#xff0c;在设计了测试用例并通过评审之后&#xff0c;由测试人员根据测试用例中描述的规程一步步执行测试&#xff0c;得到实…

软件测试基本流程

前言 “尽早的介入测试&#xff0c;遇到问题的解决成本就越低” 随着软件测试技术的发展&#xff0c;测试工作由原来单一的寻找缺陷逐渐发展成为预防缺陷&#xff0c;探索测试&#xff0c;破坏程序的过程&#xff0c;测试活动贯穿于整个软件生命周期中&#xff0c;故称为全程软…

软件测试流程详解

1.软件测试的定义&#xff1a; 使用人工或自动手段&#xff0c;来运行或测试某个系统的过程。其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别。 百度百科定义&#xff1a;软件测试&#xff08;英语&#xff1a;Software Testing&#xff09;&#xff0…

超详细一文到底!软件测试基本流程

前言&#xff1a; 采用通用的测试流程&#xff0c;能高效、高质量的完成软件测试工作&#xff0c;有助于减少沟通成本&#xff0c;对各阶段产出有明确认知等等。最终目标&#xff1a;实现软件测试规范化、标准化。以下为非通用标准&#xff0c;仅供大家参考 一、软件测试流程图…

软件测试的完整流程

前言&#xff1a;测试的过程并不是固定的&#xff0c;要灵活的变化 其实测试的过程并不是固定的&#xff0c;它只是一种规范&#xff0c;也可以把它当作一种指导。但是真实的产品测试和项目测试中&#xff0c;一定是要灵活运用的&#xff0c;甚至是在不断的根据实际情况变化。…

软件测试的流程是什么?软件测试的基本流程

软件测试的基本流程 软件测试培训班的老师经常向学员强调测试的基本流程&#xff0c;因为软件测试和软件开发一样&#xff0c;是一个比较复杂的工作过程&#xff0c;如果无章法可循&#xff0c;随意进行测试势必会造成测试工作的混乱。为了使测试工作标准化、规范化&#xff0c…

pl oracle导出数据,利用PL/SQL从Oracle数据库导出和导入数据

转自:https://www.jb51.net/article/109768.htm 本文实例为大家分享了使用PL/SQL从Oracle数据库导出和导入数据的方法,供大家参考,具体内容如下 1.导出数据: 方式一:工具—>导出用户对象—>导出.sql文件 注:这种方式导出的是建表语句和存储过程语句 方式二:工具—…

导出Oracle数据库字典

在创建数据库表时&#xff0c;对应的表列信息存储于一下几个表中&#xff0c;通过以下几个表信息可以导出数据字典。 1 USER_TABLES 用户表信息 2 USER_TAB_COMMENTS 用户表备注信息 3 USER_TAB_COLUMNS 用户表列信息 4 USER_COL_COMMENTS 用户表列备注信息 CREATE OR REPLACE…

Oracle导出表结构和表数据

导出文件 找到oracle安装目录ORACLE_HOME&#xff0c;进入bin目录&#xff0c;找到 exp.exe exp 用户名/密码数据库连接 filedmp文件导出路径 log日志文件输出路径 例子&#xff1a; exp username/password127.0.0.1:1521/orcl filef:\123.dmp logf:\456.log 可能出现的错误 …

Oracle中的数据导出(4)

目录 法一&#xff1a;使用SQL plus命令脚本 法二&#xff1a;使用PLSQL Developer工具 前几篇文章描述了如何将Oracle中的数据导出到库外&#xff0c;但是导出的数据结果都是文本文档&#xff0c;这样页面查看不和谐&#xff0c;编辑又略显麻烦。因此这篇文章将描述如何将Or…

ORACLE之数据泵导出

ORACLE之数据泵导出 导出数据泵&#xff08;expdp&#xff09;&#xff1a;执行导出时&#xff0c;expdp先创建MT表&#xff0c;并将对象的信息插入MT表&#xff0c;开始执行实际的导出任务&#xff0c;当所有的对象都导出以后&#xff0c;将MT表也一起导出到转储文件中&#…

ORACLE 导出数据csv文件,数字显示科学计数法

场景 ORACLE 查询数据&#xff0c;使用PLSQL导出csv数据&#xff0c;发现导出的数据字段,如果长度超过了12或者15&#xff0c;用excel打开&#xff0c;会自动显示成科学计数法&#xff0c;如下 解决方案 把oracle查询出来字段显示成 "字段"&#xff0c;发现这样导出的…