📜  jQuery 中 delay() 方法的用途是什么?(1)

📅  最后修改于: 2023-12-03 14:43:16.510000             🧑  作者: Mango

jQuery 中 delay() 方法的用途是什么?

简介

delay() 方法是 jQuery 中的一个函数,用于在执行后续代码之前让 jQuery 对象中的元素暂停一段时间。

语法格式
.delay( duration [, queueName ] )
  • duration : 必须,表示暂停的毫秒数。
  • queueName : 可选,用于指定队列的名称。
参数说明
  • duration 参数表示要暂停的时间长度,可以是一个数字,也可以是一个字符串形式的数字。
  • queueName 参数用于指定要添加延迟操作的队列的名称。如果未指定这个参数,delay() 方法会默认将延迟操作加入到动画队列(即默认队列)中。
应用场景

在一个 jQuery 动画队列中,我们可能会使用到一些特殊的效果函数,比如 slideToggle()fadeIn() 等,如果我们想在这些函数之间增加一个暂停时间,就可以使用 delay() 方法来实现。

举个例子:我们希望在页面加载时,先将一个 div 元素淡出,接着暂停 2 秒,最后将它滑动向左隐藏。可以这样实现:

$(document).ready(function(){
    $('#myDiv').fadeOut().delay(2000).slideUp();
});
注意事项
  • delay() 方法只是将暂停操作添加到队列中,并不会停止执行代码的进行。
  • delay() 方法只对队列中尚未执行的代码起作用。如果一个函数已经在队列中执行,你不能通过 delay() 方法来改变它的执行时间。
  • delay() 方法对于普通的回调函数不起作用。如果你想要延迟执行一个回调函数,可以考虑使用 setTimeout() 方法。
  • delay() 方法可以与 queue() 方法联合使用,通过指定不同的队列名称实现不同的效果。