84

如何在 Jquery 中delay()使用show()和使用?hide()

4

5 回答 5

176

将持续时间传递给show()and hide()

当提供持续时间时,.show()成为动画方法。

例如element.delay(1000).show(0)

演示

于 2010-12-22T11:23:20.547 回答
6

最简单的方法是使用 jquery 制作“假表演”。

element.delay(1000).fadeIn(0); // This will work
于 2018-03-29T10:16:26.043 回答
4

你为什么不试试fadeIn()而不是使用带有delay() 的show()。我认为你正在尝试做的事情可以用这个来完成。这是 fadeIn 和 FadeOut() 的 jQuery 代码,它还具有用于延迟进程的内置方法。

$(document).ready(function(){
   $('element').click(function(){
      //effects take place in 3000ms
      $('element_to_hide').fadeOut(3000);
      $('element_to_show').fadeIn(3000);
   });
}
于 2017-01-03T03:28:35.410 回答
1

来自 jquery api

在 1.4 版本中添加到 jQuery,该.delay()方法允许我们延迟执行队列中跟随它的函数。它可以与标准效果队列或自定义队列一起使用。只有队列中的后续事件被延迟;例如,这不会延迟无参数形式.show().hide()不使用效果队列。

http://api.jquery.com/delay/

于 2010-12-22T11:25:29.860 回答
-1

此信息需要更新。

我今天正在看这个,因为我需要延迟显示 div。我正在使用 jQuery 3.4.1 并对此进行了测试。

 $("#mydiv").delay(5000).show(200); // a 5 second delay before the 200 microseconds animation effect from hidden to visible is triggered.
于 2022-02-24T18:02:48.920 回答