jQuery中hover与mouseover和mouseout的区别分析
作者:bea
本文实例分析了jQuery中hover与mouseover和mouseout的区别。分享给大家供大家参考,具体如下: 以前一直以为在jquery中其实mouseover和mouseout两个事件等于hover事件。两个没什么区别,应该是一样的。但昨天一个动画效果才让我见识了,这两个并不能等同。 <div class="wrapper"><div class="img"></div><div class="text"><
本文实例分析了jQuery中hover与mouseover和mouseout的区别。分享给大家供大家参考,具体如下:
以前一直以为在jquery中其实mouseover和mouseout两个事件等于hover事件。两个没什么区别,应该是一样的。但昨天一个动画效果才让我见识了,这两个并不能等同。
<div class="wrapper">
<div class="img"></div>
<div class="text"></div>
</div>
<div class="point"></div>
在wrapper上加事件,当鼠标移动到wrapper上的时候让class="point"的层放大。但如果用mouseover和mouseout事件的话,当鼠标移动到wrapper层后,point层会变大,但当鼠标在img和text层之间进行移动的时候,point层会变大变小,不停的变化。这并不是我们想要的结果,我们想要的是只要鼠标在wrapper层上,无论是img还是text上,point就变大,但在鼠标未移出wrapper层的情况下,point层不变小。
慢慢思路也清晰了,我们不用mouseover和mouseout而用hover问题就解决了。
这么简单的问题我们竟然花了好长时间才解决,真是夸张。写篇以作纪念。
补充:后来我师父说其实在jquery源码中有这么一段:
hover: function( fnOver, fnOut ) {
return this.mouseenter( fnOver ).mouseleave( fnOut || fnOver );
}
也就是说hover!=mouseover+mouseout。但hover=mouseenter+mouseleave。
希望本文所述对大家jQuery程序设计有所帮助。
猜你喜欢
您可能感兴趣的文章:
- 基于jquery实现图片相关操作(重绘、获取尺寸、调整大小、缩放)
- 使用堆实现Top K算法(JS实现)
- 原生js和jQuery实现淡入淡出轮播效果
- jQuery实现模仿微博下拉滚动条加载数据效果
- 尝试动手制作javascript放大镜效果
- js操作cookie保存浏览记录的方法
- js实现跨域的多种方法
- jquery.cookie.js用法实例详解
- 理解javascript中try...catch...finally
- javascript实现简单加载随机色方块
- 学习JavaScript鼠标响应事件
- 理解javascript中DOM事件
- 理解JavaScript中worker事件api
- 基于jquery实现省市区三级联动效果
- js实现文本框输入文字个数限制代码
- js实现简单的验证码
- 借助FileReader实现将文件编码为Base64后通过AJAX上传
- javascript与jquery中的this关键字用法实例分析
- JS实现部分HTML固定页面顶部随屏滚动效果