移动-jQuery的mouseover和mouseenter的具体区别是什么?

问题描述

jQuery的mouseover和mouseenter的具体区别是什么?

如下一段HTML

<div style="width:300px; height:300px; background:green;">
    <p style="width:100px; height:100px; background:red"></p>
</div>
<strong></strong>

如下一段js

$(function(){
    $('div').mouseover(function(){
        $('strong').html(function(index, value){
            return value + 1;
        });
    });
});

鼠标从外面移入 div时,触发mouseover事件,使strong内容加1,然后移动到p时,居然也加了1;从外面移入p时,也加了1。这是为什么?
p不是在div内部吗,而且我绑定的元素是div,就算鼠标移入了p,怎么可能重新触发了div的mouseover事件?不是一直都在div里面吗?

解决方案

mouseenter移动进去触发一次,移动到子对象后,再移动到此对象不会触发,
mouseover移动到对象上就会触发,不管是否从子对象移动的

 <script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.4.2.min.js"></script>
<div id="dv">父div
<div>子div</div>
</div>
<div id='dvlog'></div>
<script>
$('#dv').mouseenter(function(){$('#dvlog').append('enter<br/>')}).mouseover(function(){$('#dvlog').append('over<br/>')})
</script>

解决方案二:

enter是鼠标进入指定区域时,而move肯定是进入之后,才会有移动事件

解决方案三:

JQuery--Mouseover和Mouseenter 的区别
JQuery mouseover、mouseenter区别
Mouseover与 Mouseenter的区别

解决方案四:

mouseover的处理对象是包括子对象的,而enter只是针对指定的对象

时间: 2024-08-30 10:35:32

移动-jQuery的mouseover和mouseenter的具体区别是什么?的相关文章

jQuery中mouseover事件用法实例_jquery

本文实例讲述了jQuery中mouseover事件用法.分享给大家供大家参考.具体分析如下: 当鼠标指针位于匹配的元素上方或者调用mouseover()方法时触发mouseover事件. 一个完整的事件过程,不但要有能够触发事件的条件,而且还要有事件处理程序. 可以通过mouseover()方法为mouseover事件绑定事件处理程序.例如: 复制代码 代码如下: $("div").mouseover(function(){$("div").text("欢

浅谈JQ中mouseover和mouseenter的区别_jquery

mouseenter事件只会触发一次,触发对象是注册对象或者注册对象的子元素 mouseover事件可以触发多次,触发对象是注册对象或者注册对象的子元素 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <p>

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

最近在做的在线考试和课程商城都遇到这样的问题:就是鼠标滑过的时候出现一个层,当鼠标滑到当前层的话mouseover和mouseout在低版本的浏览器会出现闪动的现象,解决这个现象的办法有许多,不过我觉得有一种是最简单的那就是把mouseover和mouseout换成对应的mouseenter和mouseleave. 当鼠标指针位于元素上方时,会发生 mouseover 事件. 该事件大多数时候会与 mouseout 事件一起使用. 注释:与 mouseenter 事件不同,不论鼠标指针穿过被选元

JQuery常用方法基础教程

Attribute:$("p").addClass(css中定义的样式类型); 给某个元素添加样式$("img").attr({src:"test.jpg",alt:"test Image"}); 给某个元素添加属性/值,参数是map$("img").attr("src","test.jpg"); 给某个元素添加属性/值$("img").attr(

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

  这篇文章主要介绍了JavaScript和JQuery的鼠标mouse事件冒泡处理,本文总结出了mouse事件的一些定论,并分别给出了JavaScript和JQuery测试代码,需要的朋友可以参考下 简单的鼠标移动事件: 进入 代码如下: mouseenter:不冒泡 mouseover: 冒泡 不论鼠标指针穿过被选元素或其子元素,都会触发 mouseover 事件 只有在鼠标指针穿过被选元素时,才会触发 mouseenter 事件 移出 代码如下: mouseleave: 不冒泡 mouse

JQuery中DOM事件合成用法实例分析

 jQuery有两个合成事件--hover()方法和toggle()方法,类似前面讲过的ready()方法,hover()方法和toggle()方法都属于jQuery自定义的方法. hover()方法 hover()方法的语法结构为: hover(enter,leave); hover()方法用于模拟光标悬停事件.当光标移动到元素上时,会触发指定的第1个函数(enter);当光标移出这个元素时,会触发指定的第2个函数(leave). 代码为: 1 2 3 4 5 6 7 $(function()

JQuery中Bind()事件用法分析

这篇文章主要介绍了JQuery中Bind()事件用法,实例分析了Bind()事件的功能.特点与绑定事件时的使用技巧,需要的朋友可以参考下 本文实例分析了JQuery中Bind()事件用法.分享给大家供大家参考.具体分析如下: 我们先看一下它的定义: ? 1 .bind( eventType [, eventData], handler(eventObject)) .Bind()方法的主要功能是在向它绑定的对象上面提供一些事件方法的行为.期中它的三个参数的意义分别如下: eventType是一个字

jquery中常用的函数和属性详细解析

 本篇文章主要是对jquery中常用的函数和属性进行了详细的介绍,需要的朋友可以过来参考下,希望对大家有所帮助 Dom: Attribute:属性 $("p").addClass(css中定义的样式类型); 给某个元素添加样式 $("img").attr({src:"test.jpg",title:"test Image"}); 给某个元素添加属性/值,参数是map $("input").attr({&qu

JQuery中DOM事件合成用法实例分析_jquery

本文实例讲述了JQuery中DOM事件合成用法.分享给大家供大家参考.具体分析如下: jQuery有两个合成事件--hover()方法和toggle()方法,类似前面讲过的ready()方法,hover()方法和toggle()方法都属于jQuery自定义的方法. hover()方法 hover()方法的语法结构为:hover(enter,leave); hover()方法用于模拟光标悬停事件.当光标移动到元素上时,会触发指定的第1个函数(enter);当光标移出这个元素时,会触发指定的第2个函