【问题标题】:Mouseover v/s hover in Jquery鼠标悬停与悬停在 Jquery
【发布时间】:2013-08-05 14:21:20
【问题描述】:

这个问题与信息有关。我是 jquery 的新手。我在 HTML 和 CSS 方面经验丰富。

Jquery 中的 Hover 和 Mouseover 有什么区别。 当鼠标悬停在一个元素上时,它们不是都被激活了吗?

【问题讨论】:

  • 您阅读文档了吗?

标签: jquery html


【解决方案1】:

mouseover():为该元素的子元素触发事件。

hover(): Hover 实际上与mouseentermouseleave 一起工作,而不会触发儿童。

要实现悬停效果,我们需要mouseovermouseout 事件

$("element").mousover(function(){ 
    //do something over
}).mouseout(function() { 
    //do something out
});

而在 hover() 中它只是一个回调。

$("element").hover(
  function () {
    //do something enter
  }, 
  function () {
    //do something exit
  }
);

来自大卫琼斯的experience

在我从事的项目中,我 设置一个容器 div 以使用 mouseover 和 mouseout 添加一些 html标签到容器。这看起来很好,但我 发现使用 mouseover/mouseout 意味着添加的 html 保留 当我试图与其他人互动时消失 jquery 我有与之冲突的地方。

最后我的特殊解决方案要求我使用 mouseenter 和 mouseleave 使用实时功能而不是使用悬停,因为我 正在使用生成的 html。

【讨论】:

    【解决方案2】:

    hover() 函数更高级 - 它被构建为调用函数来处理 mouseenter 事件和 mouseleave 事件。这对于具有悬停和正常状态的 UI 元素(例如按钮)非常方便。

    mouseover() 函数专门绑定到 mouseover 事件。最好的情况是您只关心鼠标何时越过边界进入一个元素,而您并不真正关心如果它离开会发生什么。当您想在某个元素上触发事件时,它也是要调用的函数。

    解释来自: http://www.quora.com/jQuery/What-is-the-difference-between-the-hover-and-mouseover-functions

    【讨论】:

      猜你喜欢
      • 2011-08-04
      • 1970-01-01
      • 1970-01-01
      • 2011-07-07
      • 1970-01-01
      • 2010-11-10
      • 1970-01-01
      • 2018-09-03
      • 1970-01-01
      相关资源
      最近更新 更多