mouseover定义和用法

当鼠标指针位于元素上方时,会发生 mouseover 事件。

该事件大多数时候会与 mouseout 事件一起使用。

mouseover() 方法触发 mouseover 事件,或规定当发生 mouseover 事件时运行的函数。

注释:与 mouseenter 事件不同,不论鼠标指针穿过被选元素或其子元素,都会触发 mouseover 事件。

 <div class="parent">父亲
<div class="child">儿子<span></span></div>
</div>
<script type="text/javascript">
$(function(){
var x=1;
$(".parent").mouseover(function(){
$(".parent span").text(++x);
});
$(".parent").mouseout(function(){
$(".parent span").text(++x);
});
});
</script>

aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKcAAACkCAIAAAB94KkVAAACaklEQVR4nO3XsXWjQBSG0em/lK3BPbiAdQXuQBEOfDZZxBgG0DP8950vQIjA5jLSqH18PpRW+/v5UFrtz9u70mqTyRvqiUM9cagnDvXEoZ441BOHeuIsq7ema7dfvS0cd1p5mc5qp/rcD/wF2qO+JPf0/I9Tfy9yGlbvO1H81Y2pd1Db7ODpu50zOr3htb5k9qPiwO5PB/cC9U1Tf0cS2qk+ja5dwJVRT2y/+vSPsL/F8/H+izpEfdpuxriy16z1/658eqDXtV99/ff60pXgX91O9TnYEmHb8lLnNqze2X/N35qv7PWPi45vQH3lfrv/WNT/58kNr3VdOOqJUU9sRH1qWls58BnqrbXOS9UDF6qvmXoh6seq97stOfVEcuqJ5NTn3vcnpz5Xryehfp76pql3om6tU6dOnXqm+lxu/UNAnfp9Kwc+Vn1pu079tup9zv4vse+T1C+mvh8shfxO6vW38kKVA1OnTp06derUqVOnTp26qIu6qIdWDkydOnXq1KlTp06dOnXqoi7qoh5aOTB16tSpU6dOnTp16tSpi7qoi3po5cDUqVOnTp06derUqVOnLuqiLuqhlQNTp06dOnXq1KlTp06duqiLuqiHVg5MnTp16tSpU6dOnTp16qIu6qIeWjkwderUqVOnTp06derUqYu6qIt6aOXA1KlTp06dOnXq1KlTpy7qoi7qoZUDU6dOnfom9fI/Wjujnhj1xKgnRj0x6olRT4x6YtQTo54Y9cSoJ0Y9MeqJUU+MemLUE6OeGPXEqCdGPTHqiVFPjHpi1BOjnhj1xKgnRj0x6omNqJv7DvXEoZ44X+z6uV+yNSyHAAAAAElFTkSuQmCC" alt="" />

当鼠标在父亲容器和父亲外容器之间切换时里面的值每次只会加1,当鼠标在父亲容器和儿子容器之间切换时,里面的值每次会加2,因为不论鼠标指针穿过被选元素或其子元素都会触发mouseover,mouseout同理。

mouseenter定义和用法

当鼠标指针穿过元素时,会发生 mouseenter 事件。

该事件大多数时候会与 mouseleave 事件一起使用。

mouseenter() 方法触发 mouseenter 事件,或规定当发生 mouseenter 事件时运行的函数。

注释:与 mouseover 事件不同,只有在鼠标指针穿过被选元素时,才会触发 mouseenter 事件。如果鼠标指针穿过任何子元素,同样会触发 mouseover 事件。

<script type="text/javascript">
$(function(){
var x=1;
$(".parent").mouseenter(function(){
$(".parent span").text(++x);
});
$(".parent").mouseleave(function(){
$(".parent span").text(++x);
});
});
</script>

只有当鼠标经过父亲容器的时候才会触发,经过儿子容器是没有反应的,mouseleave同样,只有离开父亲容器的时候才会促发。

但是有个问题,当用绝对定位让儿子容器偏离父亲元素的覆盖面积时,效果上mouseenter跟mouseover情况一样了:

<style type="text/css">
.parent{
position: relative;
width:150px;
height:150px;
background: red;
}
.child{
position: absolute;
top:160px;
left:160px;
width:100px;
height:100px;
background: yellow;
}
</style>
<script type="text/javascript">
$(function(){
var x=1;
$(".parent").mouseenter(function(){
$(".parent span").text(++x);
});
$(".parent").mouseleave(function(){
$(".parent span").text(++x);
});
});
</script>

aaarticlea/png;base64,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" alt="" />

使用mouseenter,鼠标在儿子容器上面经过时也会触发mouseenter,原因是这时候鼠标进入儿子容器的时候实际上就是进入了父亲容器。

理解mouseover,mouseout,mouseenter,mouseleave的更多相关文章

  1. jquery的hover mouseover mouseout mouseenter mouseleave的区别

    jquery的hover mouseover mouseout mouseenter mouseleave的区别 1.mouseover mouseout mouseover - 鼠标指针经过任何子元 ...

  2. mouseover,mouseout,mouseenter,mouseleave的区别

    1.前言 今天下午参加一个面试,对方问我写不写博客,这时候才猛然意识到好久没写东西了.最近一直在外边实习,每天有很多经历和挑战,但是却没有及时地记录下来,这一点必须得批评自己,以后得经常把自己遇到的问 ...

  3. 关于事件mouseover ,mouseout ,mouseenter,mouseleave的区别

    轮播中大多会选择mouseover和mouseout  这个时候是没有任何问题的 但当遇到有css3动画的时候,会发现移入移出过快 动画还没加载完成就需要执行下一个动画,完了动画样式就错乱了. 这时候 ...

  4. 你可能不知道的mouseover/mouseout mouseenter/mouseleave

    mouseover与mouseenter 1. 触发时机 mouseover在被监听的节点与子节点上都会触发 mouseenter只在被监听的节点上触发 本质上是因为mouseenter不能冒泡 2. ...

  5. mouseover,mouseenter,mouseleave,mouseout

    mouseover和mouseout对应 //鼠标移入移出触发该元素及子元素 mouseenter和mouseleave对应 //鼠标移入移出只触发该元素 看完例子即可知道其区别: mouseover ...

  6. jQuery mouseover与mouseenter,mouseout与mouseleave的区别

    mouseover与mouseenter 不论鼠标指针穿过被选元素或其子元素,都会触发 mouseover 事件. 只有在鼠标指针穿过被选元素时,才会触发 mouseenter 事件. mouseou ...

  7. mouseover,mouseout和mouseenter,mouseleave的区别及适用情况

    在做类似于百度地图右下角,不同地图切换UI时,遇到了问题. 就是鼠标滑过的时候出现一个层,当鼠标滑到当前层的话mouseover和mouseout在低版本的浏览器会出现闪动的现象,最简单的那就是把mo ...

  8. mouseover和mouseenter,mouseout和mouseleave的区别-引发的探索

    相信小伙伴们都用过鼠标事件,比如mouseover和mouseout,mouseenter和mouseleave.它们都分别表示鼠标移入移出. 在使用的过程中,其实一直有个小疑问——它们之间究竟有什么 ...

  9. mouseover&mouseout和mouseenter&mouseleave

    mouseenter&mouseleave: 进入被选元素触发,进入被选元素的子元素不会重复触发. mouseover&mouseout: 进入被选元素触发,从被选元素进入其子元素会再 ...

随机推荐

  1. 「美团 CodeM 复赛」城市网络

    题目链接 题意分析 首先 \([u,v]\)在树上是一条深度递增的链 那么我们可以使用倍增找 \(x\)的祖先当中深度最大的值大于\(x\)的点 然后维护一个\(pre\) 重新建树 这样从\(x\) ...

  2. js的事件机制

    js的事件机制 解释:当我们的行为动作满足了一定的条件后,会触发某事务的执行. 内容: 1.单双击事件 单击:onclick 当鼠标单击时候会触发 双击:ondbclick 当鼠标双击时候会触发 2. ...

  3. ubuntu->桌面版-常用设置

    1.目前使用unity桌面 ,使用Gnome,未来将会采用 Qt/QML 语言写的桌面 2.汉化 系统: 在 设置(setting)->语言支持(language support)->选择 ...

  4. 27.Next Permutation(下一个字典序列)

    Level:   Medium 题目描述: Implement next permutation, which rearranges numbers into the lexicographicall ...

  5. weex 编译vue成js

    cd 项目 1.开发 npm run web 开发过程中可以直接使用浏览器运行 npm run ios 2.打包 npm run build 会在 dist 文件夹 中生成js文件, 即可拖入ios ...

  6. Linux安装Elasticsearch-head插件

    首先需要下载以下内容: 我试验的对应版本:ES:elasticsearch-6.6.1.tar.gz  Node:node-v10.15.3-linux-x64.tar  JDK:jdk-8u201- ...

  7. using声明和using指示

    using声明(using declaration) using namespacename::namespacemember; using声明一次只引入命名空间的一个成员.从效果上看就好像using ...

  8. hdu1466计算直线的交点数 非原创

    原文链接 平面上有n条直线,且无三线共点,问这些直线能有多少种不同交点数. 比如,如果n=2,则可能的交点数量为0(平行)或者1(不平行). Input输入数据包含多个测试实例,每个测试实例占一行,每 ...

  9. Delphi XE TStringBuilder

    function T_SunnySky_SDK.JoinItems(AParamDic: TDictionary<string, string>): string; var sb : TS ...

  10. JS之作用域与闭包

    JS之作用域与闭包   作用域在JS中同样也是一个重要的概念.它不复杂,因为ES5中只有全局作用域和函数作用域,我们都知道他没有块级作用域.但在ES6中多了一个let,他可以保证外层块不受内层块的影响 ...