【问题标题】:jQuery: Delay of fadeIn, slideDown or something similarjQuery:fadeIn、slideDown 或类似的延迟
【发布时间】:2010-12-11 10:35:22
【问题描述】:

昨晚我想知道如何延迟淡入或类似的东西。这不是我正在做的事情,我只是想知道。

例如,如果您有一个列表,其中包含在悬停时激活工具提示的链接。你如何让它“等待”直到你悬停 1 秒?

我想这样做,因此当您将鼠标悬停在列表上时,工具提示不会“闪烁”。如果你明白我的意思。

登录时也可以使用相同的东西。如果您看到http://twitter.com/(未登录)。如果顶部的登录框是通过悬停激活的,而不是单击,如果您的光标离开登录框,它将再次消失。是否可以设置“延迟”,以便您的光标可以离开登录框,然后回来,而不会消失......?

简而言之:
- 在 x 秒后悬停时如何激活脚本?
- 如何设置延迟以隐藏由悬停激活的 div(不悬停时)?
- 是不是一样的,只是反过来?

【问题讨论】:

    标签: javascript jquery delay wait


    【解决方案1】:

    有一个非常高级的悬停插件,可以在触发任意代码之前等待您的鼠标减速 - http://cherne.net/brian/resources/jquery.hoverIntent.html

    或者,如果您不需要这么高级的东西...您可以简单地在setTimeout() 中触发动画,然后在鼠标离开时调用clearTimeout()

    还有一种选择,就是不要为延迟而烦恼。如果你做一个.stop().fadeIn() 和一个.stop().fadeOut() 而不是一个简单的show()hide(),你不会得到一个“闪烁”,效果会很好看。

    (您可以查看.delay() 以了解延迟动画相关的代码 - 尽管这只会延迟动画,即使您在延迟结束之前离开 div 也是如此。)

    【讨论】:

      猜你喜欢
      • 2012-03-06
      • 1970-01-01
      • 1970-01-01
      • 2016-04-19
      • 2014-09-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-10-05
      相关资源
      最近更新 更多