当前位置: 首页 > 面试题库 >

mouseover和mouseenter事件之间有什么区别?

张德佑
2023-03-14
问题内容

我一直使用该mouseover事件,但是在阅读jQuery文档时发现了mouseenter。它们的功能似乎完全相同。

两者之间有区别吗?如果是,我什么时候应该使用它们?
(也适用于mouseoutvs mouseleave)。


问题答案:

您可以从jQuery文档页面尝试以下示例。这是一个很好的互动演示,非常清楚,您可以自己看到。

var i = 0;

$("div.overout")

  .mouseover(function() {

    i += 1;

    $(this).find("span").text("mouse over x " + i);

  })

  .mouseout(function() {

    $(this).find("span").text("mouse out ");

  });



var n = 0;

$("div.enterleave")

  .mouseenter(function() {

    n += 1;

    $(this).find("span").text("mouse enter x " + n);

  })

  .mouseleave(function() {

    $(this).find("span").text("mouse leave");

  });


div.out {

  width: 40%;

  height: 120px;

  margin: 0 15px;

  background-color: #d6edfc;

  float: left;

}



div.in {

  width: 60%;

  height: 60%;

  background-color: #fc0;

  margin: 10px auto;

}



p {

  line-height: 1em;

  margin: 0;

  padding: 0;

}


<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>



<div class="out overout">

  <span>move your mouse</span>

  <div class="in">

  </div>

</div>



<div class="out enterleave">

  <span>move your mouse</span>

  <div class="in">

  </div>

</div>

简而言之,您会注意到,当鼠标悬停在元素上时,该元素上会发生鼠标悬停事件-来自其子元素或父元素,但是仅当鼠标从该元素外部移至该元素时才会发生鼠标进入事件。

或者如mouseover()文档所述:

.mouseover()会因事件冒泡而引起许多头痛。例如,在此示例中,当鼠标指针移到Inner元素上时,将向该元素发送mouseover事件,然后再向上移动到Outer。这可能会在不合时宜的时候触发绑定的鼠标悬停处理程序。有关.mouseenter()有用的替代方法,请参见讨论。



 类似资料:
  • 本文向大家介绍mouseover和mouseenter的区别?相关面试题,主要包含被问及mouseover和mouseenter的区别?时的应答技巧和注意事项,需要的朋友参考一下 参考回答: mouseover:当鼠标移入元素或其子元素都会触发事件,所以有一个重复触发,冒泡的过程。对应的移除事件是mouseout mouseenter:当鼠标移除元素本身(不包含元素的子元素)会触发事件,也就是不会

  • 问题内容: : 在将所有数据加载到网格中并完成所有其他过程之后,将触发此事件。同样,事件会与datatype参数无关并在对分页等进行排序后触发。 : 每个服务器请求后立即执行此事件。数据来自响应的数据取决于数据类型网格参数 从该文档中,我了解到在绘制网格的末尾触发,并在jqGrid完成与后端的通信后触发。 因此,我想知道-为什么在演示中用于更改单元格的颜色而不使用? 问题答案: 我认为这个问题是j

  • 本文向大家介绍浅谈JQ中mouseover和mouseenter的区别,包括了浅谈JQ中mouseover和mouseenter的区别的使用技巧和注意事项,需要的朋友参考一下 mouseenter事件只会触发一次,触发对象是注册对象或者注册对象的子元素 mouseover事件可以触发多次,触发对象是注册对象或者注册对象的子元素 以上这篇浅谈JQ中mouseover和mouseenter的区别就是小

  • 本文向大家介绍鼠标事件css的:hover和js的mouseover有什么区别?相关面试题,主要包含被问及鼠标事件css的:hover和js的mouseover有什么区别?时的应答技巧和注意事项,需要的朋友参考一下 :hover为CSS伪类,mousehover为JS DOM事件。 CSS只能改变元素样式,JS既可以改变元素样式又可以改变元素中的内容。 :hover当鼠标移出后恢复之前的样式,mo

  • 问题内容: 事件驱动和异步通常用作同义词。两者之间有什么区别吗? 另外,和之间有什么区别?它们如何配合在一起? 最后,我读过很多遍了,Linux中的AIO被严重破坏了。它到底有多坏? 谢谢。 问题答案: 事件是实现异步执行的范例之一。但是,并非所有异步系统都使用事件。那是关于这两个的语义含义-一个是另一个的超实体。 epoll和aio使用不同的隐喻: epoll是一个阻塞操作()-阻塞线程直到发生

  • 问题内容: 在此示例中: 无法编译为: 而被编译器接受。 这个答案说明唯一的区别是,与不同,它允许您稍后引用类型,似乎并非如此。 是什么区别,并在这种情况下,为什么不第一编译? 问题答案: 通过使用以下签名定义方法: 并像这样调用它: 在jls§8.1.2中,我们发现(有趣的部分被我加粗了): 通用类声明定义了一组参数化类型(第4.5节), 每种可能通过类型arguments调用类型参数节的类型