mouseover,mouseout,mouseenter,mouseleave的区别

news/2024/5/9 22:00:28/文章来源:https://blog.csdn.net/weixin_34138255/article/details/85636602

相信做前端开发的都听说过“冒泡型事件”吧,《JavaScript高级程序设计》第九章有详细的讲述,但是,在学习的时候一知半解,也没详细去理解,导致最近在工作中碰到了问题:有许多 li 标签,标签上有2个按钮,当且仅当鼠标移入 li 时才会显示上面的2个按钮,如下图,左边是默认状态,右边是鼠标移入状态,开始使用的是 mouseover 和 mouseout ,结果鼠标移动到按钮上时,按钮会出现闪烁的情况。

    

后来对比了mouseover,mouseout,mouseenter,mouseleave的区别发现,mouseover 和 mouseout 在鼠标移入移出时会触发其父级元素的 mouseover,mouseout 方法,而 mouseenter,mouseleave 只会触发当前鼠标移入和移出元素的方法。换句话说,后两者是不冒泡的事件,前两者是会冒泡的事件。

下面是实验详细:

<div id="mouseEventTest"><span id="parent">aaaaaaaaaaaaaaa<span id="child">bbbbbbbbbb</span></span>
</div>

页面如下:

简单的css代码:

span{padding: 10px;width: auto;line-height: 30px;
}

parent 和 child 的 mouseover,mouseout,mouseenter,mouseleave 方法如下:

复制代码
    function parentMouseOver(e) {console.log('parentMouseOver');}function parentMouseOut(e) {console.log('parentMouseOut');}function childMouseOver(e) {console.log('childMouseOver');}function childMouseOut(e) {console.log('childMouseOut');}function parentMouseEnter(e) {console.log('parentMouseEnter');}function parentMouseLeave(e) {console.log('parentMouseLeave');}function childMouseEnter(e) {console.log('childMouseEnter');}function childMouseLeave(e) {console.log('childMouseLeave');}
复制代码

分别设置两组绑定:

1)mouseover,mouseout

    $("#parent").bind('mouseover',parentMouseOver);$("#parent").bind('mouseout',parentMouseOut);$("#child").bind('mouseover',childMouseOver);$("#child").bind('mouseout',childMouseOut);

2)mouseenter,mouseleave

    $("#parent").bind('mouseenter', parentMouseEnter);$("#parent").bind('mouseleave', parentMouseLeave);$("#child").bind('mouseenter', childMouseEnter);$("#child").bind('mouseleave', childMouseLeave);

操作方式是:鼠标从 parent 左边移入,然后从右边移出。

绑定的结果如下:

1)组(四个红框分别是:进入 parent ,从 parent 到 child ,从 child  到 parent ,移出 parent):

       

2)组:

    

实验结果可以清晰地看出 mouseover,mouseout,mouseenter,mouseleave 的区别。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_755079.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

吉林社科规划网站转换计划

概述<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" />吉林社科网站:http://www.jlpopss.gov.cn是本人开发&#xff08;后台代码&#xff0c;非界面设计&#xff09;并长时间维护的网站&#xff0c;根据以前开发的经验决定对系统进…

团队项目(MVP-----------新能源汽车无线充电管理网站)个人任务(6)

本周任务&#xff1a;该周是项目完善的最后一周&#xff0c;本周主要的任务是继续优化界面&#xff0c;注意一些细节上的处理。 Github地址&#xff1a;https:/github.com/xiangbaobaojojo/car转载于:https://www.cnblogs.com/Ci0Yu/p/8079105.html

如何把canvas元素作为网站背景总结详解

如何把canvas元素作为网站背景总结详解 一、总结 一句话总结&#xff1a;最简单的做法是绝对定位并且z-index属性设置为负数。 1、如何把canvas元素作为网站背景的两种方法&#xff1f; a、设置层级&#xff08;本例代码就是用的这种方法&#xff09;&#xff1a; position:abs…

昆明网站建设公司排名榜

我作为昆明地区的一个网站开发人员&#xff0c;在昆明已经有3年的网站开发经验了&#xff0c;对于昆明网站建设公司或多或少的都有所了解&#xff0c;或是自己接触&#xff0c;或是听朋友介绍&#xff0c;或是同事的经验&#xff0c;在加上自己的面试过的公司&#xff0c;对昆明…

linux实战考试题:统计一个网站每小时的PV数量-看看你会么?

老男孩教育第三关课后实战考试题练习&#xff1a;请统计老男孩老师的博客 http://oldboy.blog.51cto.com/ 博客每小时所有用户访问的pv数量&#xff08;统计样本5个小时以上&#xff09;。 要求&#xff1a;老男孩20-21期的学生必答题&#xff08;务必自己搞出来&#xff0c;能…

360浏览器插件开发_360浏览器中SEO优化插件如何安装

今天网校同学陈总来到我公司做客&#xff0c;双方交流下2019年各自企业运营发展战略方向&#xff0c;谈到关于网站优化方面的知识&#xff0c;他查看了下我们曾经做过的危险品货代公司网站的排名&#xff0c;他看到我电脑的浏览器上有SEO插件&#xff0c;查看优化信息非常方便&…

常见网络工程师面试题:电脑是如何访问网站的?

咱们网络工程师去面试的时候&#xff0c;经常会有面试官问到&#xff1a;请尽可能详细的介绍&#xff0c;一台pc从开机&#xff0c;到打开csdn主页的过程&#xff01; 那什么样的回答才能让面试官满意呢&#xff1f; 大家可以看看下面的参考回答~ &#xff08;1&#xff09; 首…

网工面试题:主机访问网站的数据流分析是什么样的?有哪些注意事项?

哈喽&#xff0c;大家好&#xff0c;我是网工学姐~ 今天给大家整理了一些面试技巧&#xff0c;大家要是觉得好可以点赞收藏哦&#xff01; 访问面试中常见的一些面试题&#xff1a;主机访问网站的数据流分析是什么样的&#xff1f; 参考答案&#xff1a; 1、打开主机&#xff0…

网站建设:简单动态网站搭建

2019独角兽企业重金招聘Python工程师标准>>> 通过前面Clouder课程的学习&#xff0c;或许你已经掌握了在云服务器上发布和部署静态网页的方法&#xff0c;那么如何搭建一个可以随时更新内容的动态网站&#xff1f;通过本课程的学习&#xff0c;你将掌握如何在云端搭…

PayPal网站付款标准版(for PHP)

原文:PayPal网站付款标准版(for PHP)简单整理一下PHP项目整合PayPal支付功能。 一、表单的构建&#xff1a; <form method"post" name"form" action"https://www.paypal.com/cgi-bin/webscr"> <input type"hidden" name"…

Yahoo!网站性能最佳体验的34条黄金守则之内容篇

2019独角兽企业重金招聘Python工程师标准>>> Yahoo!的Exceptional Performance团队为改善Web性能带来最佳实践。他们为此进行了一系列的实验、开发了各种工具、写了大量的文章和博客并在各种会议上参与探讨。最佳实践的核心就是旨在提高网站性能。 Excetional Perfo…

网市场云建站 v4.8 增加私有模版库,开放 Mysql 配置、在线客服源码

网市场云建站系统&#xff0c;结合各种产品&#xff0c;将一个网站的服务器成本降低到0.1元&#xff01;打破传统建站的高成本&#xff0c;让价格不再是阻碍的门槛&#xff0c;让每个人都能有自己的网站&#xff01; 延续了帝国CMS、织梦CMS优秀的模板流程&#xff0c;模板页面…

北京网站域名服务器,北京域名服务器

北京域名服务器 内容精选换一换内网域名解析是基于VPC网络的域名解析过程&#xff0c;通过华为云内网DNS把域名(如ecs.com)转换成私网IP地址(192.168.1.1)。内网域名解析实现云服务器在VPC内直接通过内网域名互相访问。同时&#xff0c;还支持不经公网&#xff0c;直接通过内网…

微服务架构实践:从零搭建网站扫码登录

微信扫码登录大家都是应用比较多的登录方式了&#xff0c;现在大的购物网站像京东、淘宝等都支持使用APP扫码登录网站了。今天就用APP扫码登录网站的实例来举例说明微服务架构的搭建过程。 微服务架构应该是什么样子 在这之前先看一看一个微服务架构落地以后应该是什么样子的。…

基于http的web静态网站的搭建

在平常访问网站时&#xff0c;我们输入一个网址就可以看到我们想要看到的东西&#xff0c;但是&#xff0c;大家知道我们是如何获取到这些信息的嘛&#xff0c;跟着我一起来了解下吧 网址的意义 浏览器与服务器的交互 搭建流程 |----搭建环境&#xff1a;redhat7.x. |----搭建…

基于https的web静态网站的搭建

http协议是以明文方式发送的&#xff0c;不提供任何的加密方式&#xff0c;而https确正好弥补了这种缺陷&#xff0c;httpshttpssl ssl的作用 客户端与服务端的认证过程 **验证过程**&#xff1a; 客户端请求建立&#xff0c;不可能不请求服务器就直接给响应 然后进行三次握手…

开发asp.net2.0手机用网站 点滴[xgluxv]

最近一段时间一直在做一个给手机浏览的网站基于asp.net2.0,现在第一期已经到尾声&#xff0c;说说开发的感想。客户要求只要支持wap2.0的手机都能浏览&#xff08;我刚开始想他们应该说得是属于智能手机级别的都能浏览&#xff0c;后来发现有点不对&#xff0c;他们的测试机很多…

浅析ASP网站后台设计

2019独角兽企业重金招聘Python工程师标准>>> 现在学习ASP语言很少啦&#xff0c;逐渐被PHP&#xff0c;asp.net&#xff0c;jsp所代替。 这里介绍ASP网站后台设计技巧 &#xff11;.用户名规则&#xff1a; 字符大于4&#xff0c; 不能在黑名单里&#xff08;比如…

为 Drupal 7 网站添加自定义CSS

当我们在逛聊天室或者论坛时&#xff0c;经常会碰到有人提问怎么向 Drupal 网站中添加自定义CSS —— 通常来讲&#xff0c;通过 Drupal 主题来进行添加最好。不过在某些情况下&#xff0c;因为环境限制或网站管理员没有访问主题文件的权限&#xff0c;而不得不考虑其它办法。 …

Exchange Server 2016 IIS 网站绑定的证书消失

最近处理了某用户的报维&#xff0c;exchange 2016 服务器上IIS分配的证书自动没有了&#xff0c;Exchange 服务器使用证书&#xff0c;来加密与客户端或其他服务器之间的数据传输&#xff0c;证书怎么会自己没有了呢&#xff0c;找了很多方法&#xff0c;在微软的论坛中找到了…