`

关于mouseout与mouseleave的区别

 
阅读更多

今天关于两个方法进行查询

$("li").each(function(i) {

            //删除的鼠标划过的显示与隐藏
            $(this).mouseover(function() {
                $(this).find(".del").fadeIn(10);
            })
            $(this).mouseleave(function() {
                $(this).find(".del").fadeOut(10);
            })
        })

 

 

上面的代码中如果不是用的mouseleave而是mouseout的话你会发现尚未离开类名的.del这个DIV这个DIV有时候就会闪动。那是因为你可能离开了该DIV的子元素,所以会出发mouseout事件。具体mouseleave和mouseout两者之间的区别主要有以下两点:

 

1.不论鼠标指针离开被选元素还是任何子元素,都会触发 mouseout 事件。

 

2.只有在鼠标指针离开被选元素时,才会触发 mouseleave 事件。


下面是w3c上的例子很便于大家理解

<html>
<head>
<script type="text/javascript" src="/jquery/jquery.js"></script>
<script type="text/javascript">
x=0;
y=0;
$(document).ready(function(){
  $("div.out").mouseout(function(){
    $(".out span").text(x+=1);
  });
  $("div.leave").mouseleave(function(){
    $(".leave span").text(y+=1);
  });
});
</script>
</head>
<body>
<p>不论鼠标指针离开被选元素还是任何子元素,都会触发 mouseout 事件。</p>
<p>只有在鼠标指针离开被选元素时,才会触发 mouseleave 事件。</p>
<div class="out" style="background-color:lightgray;padding:20px;width:40%;float:left">
<h2 style="background-color:white;">被触发的 Mouseout 事件:<span></span></h2>
</div>
<div class="leave" style="background-color:lightgray;padding:20px;width:40%;float:right">
<h2 style="background-color:white;">被触发的 Mouseleave 事件:<span></span></h2>
</div>
</body>
</html>

 

 

分享到:
评论

相关推荐

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

    mouseover ,mouseout ,mouseenter,mouseleave,都是鼠标点击而触发的事件,各自代表什么意思,有哪些区别呢?下面跟着脚本之家小编一起看看吧

    实例讲解jquery中mouseleave和mouseout的区别

    本文详细的介绍了关于jQuery中mouseleave和mouseout的区别,分享给大家供大家参考,具体内容如下 很多人在使用jQuery实现鼠标悬停效果时,一般都会用到mouseover和mouseout这对事件。而在实现过程中,可能会出现一些...

    jquery中的mouseleave和mouseout的区别 模仿下拉框效果

    1.不论鼠标指针离开被选元素还是任何子元素,都会触发 mouseout 事件。 2.只有在鼠标指针离开被选元素时,才会触发 mouseleave 事件。 代码如下: ”sel_box”&gt; &lt;input type=”button” value=”请选择所属部门” ...

    javascript中mouseover、mouseout使用详解

    在ie下有mouseenter 与 mouseleave事件来替代mouseover 和 mouseout。 网上很多说法,这两个事件只有ie支持,其他浏览器不支持。 但是我在最新版本的火狐与谷歌都支持了mouseenter 与 mouseleave!!!!! 另外ie是...

    基于vue中对鼠标划过事件的处理方式详解

    鼠标事件进行监听 ...翻阅了一些博客,发现好多都提到了mouse事件,如mouseover、mouseout、mouseenter、mouseleave,在之后我自己也通过这种方法进行了尝试。 xss=removed&gt; label=图片 width=180&gt; &lt;

    经过绑定元素时会多次触发mouseover和mouseout事件

    jquery解决办法: jquery的mouseenter和mouseleave方法已经修复了这个问题,可以直接用来替代mouseover和mouseout 不过有个mouseenter和mouseleave有个小问题是,让鼠标从文档外直接进入绑定事件的元素时,mouse...

    快速移动鼠标触发问题及解决方法(ECharts外部调用保存为图片操作及工作流接线mouseenter和mouseleave)

    记录两个项目开发中遇到的问题,一个是ECharts外部调用保存为图片操作,一个是workflow工作流连接曲线onmouseenter和onmouseleave事件由于鼠标移动过快触发问题。 一、外部按钮调用ECharts图表的保存为图片操作 ...

    为非IE浏览器添加mouseenter,mouseleave事件的实现代码

    IE6/7/8对应的是srcElement。currentTarget 指添加事件handler的元素本身,如el....relativeTarget 指事件相关的元素,一般用在mouseover,mouseout事件中。IE6/7/8中对应的是fromElement,toElement。mouseenter ,m

    electron实现类似QQ窗口靠边自动边缘隐藏

    一开始想到的是通过页面的mouseout、mouseenter、mouseleave等方法实现,通过查找了很多资料,发现这几个方法只能实现一些比较简单的交互,局限性很大,难以实现鼠标hover显示,out就隐藏的效果。 后来发现通过监听...

    javascript中mouseenter与mouseover的异同

    不知道大家在面试或者工作过程中有没有被 mouseover 和 mouseenter (对应的是 mouseout 和 mouseleave )事件所困扰。自己之前在面试的时候就有被问到诸如mouseover和mouseenter事件的异同之类的问题?当时没有答出来...

    跨浏览器的 mouseenter mouseleave 以及 compareDocumentPosition的使用说明

    才发现这两个事件 是如此的优秀 且好用… 但搜索过程中 发现 好多人 似乎不太明白这两个事件 和mouseover mouseout 真正的区别 和用途.. 并且看到google中搜索得到的 一些朋友 实现的 跨浏览器 解决方案. 觉得...

    JavaScript和JQuery的鼠标mouse事件冒泡处理

    简单的鼠标移动事件: 进入 代码如下: mouseenter:不冒泡 mouseover: 冒泡 不论鼠标指针穿过被选元素或其子元素,都会...给一个嵌套的层级绑定mouseout事件,会发现mouseout事件与想象的不一样 代码如下: &lt;!DOC

    IE中鼠标经过option触发mouseout的解决方法

    本文实例讲述了IE中鼠标经过option触发mouseout的解决方法。分享给大家供大家参考。具体分析如下: 要实现的功能: 有一个DIV,当鼠标经过时此DIV完全展开,当鼠标移开时DIV收缩回去,其中DIV里面有一个select选择框...

    如何判断鼠标是否在DIV的区域内

    但是这种方法的局限性就是,必须要触发mouseover,或mouseout,mouseleave事件才能知道。 代码如下:function chkIn() { div_1.innerText = “现在你把鼠标移入层了!”; div_1.style.font = “normal black”; ...

    jquery常用方法及使用示例汇总

    mouseover事件大多数时候会与 mouseout 事件一起使用。 mouseover/mouserout事件由于冒泡机制,经常在不需要的时候不小心触发,从而导致一些脚本问题。 mouseenter()/mouseleave() mouseenter/mouseleave当且仅当...

    javascript 兼容FF的onmouseenter和onmouseleave的代码

    经过测试发现,例子1 在 ff下抖动的厉害,ie下稍微有点。具体原因 其实就是 mouseout 的冒泡机制 引起的。

Global site tag (gtag.js) - Google Analytics