.queue( [queueName] )
显示在匹配元素上会被执行的函数队列
.queue([queueName])
queueName
类型是字符串。
一段包含队列名字的字符串。默认值是fx,标准的效果队列。
.queue( [queueName] , newQueue )
操作将在匹配元素上执行的函数队列
.queue([queueName],newQueue)
.queue([queueName],callback(next))
queueName
类型是字符串。
包含队列名字的字符串。默认值是fx,标准的效果队列。
newQueue
类型是数组。
一个函数数组来替换当前队列的内容。
.queue([queueName],newQueue)
.queue([queueName],callback(next))
queueName
类型是字符串。
包含队列名字的字符串。默认值是fx,标准的效果队列。
newQueue
类型是数组。
一个函数数组来替换当前队列的内容。
每一个元素可以通过jQuery拥有一个或多个附属的函数队列。在大多数的程序中,只有一个队列(称做fx)被使用。队列允许异步的在一个元素上调用一系列动作,不会停止程序的执行。
典型的例子是在一个元素上调用多个动画,比如:
典型的例子是在一个元素上调用多个动画,比如:
$('#foo').slideUp().fadeIn();
当这条语句被执行,该元素立刻开始展示sliding动画,但是fading过渡的动画被放置在fx的队列上会被在sliding过渡动画结束后调用一次。
.queue()方法允许我们直接操作函数队列。调用含有回调的.queue()方法是十分有用的;他允许我们在队列的后面放置新的函数。
这个特性和在一个动画的方法中提供回调函数一样,但是不需要在动画执行的时候得到回调。
$('#foo').slideUp();
$('#foo').queue(function() {
alert('Animation complete.');
$(this).dequeue();
});
等同于:
$('#foo').slideUp(function() {
alert('Animation complete.');
});
注意当使用jQuery.queue()添加函数时,我们应该确保jQuery.dequeue()方法最后会被调用,以至于下一个函数能够执行。
jQuery1.4中,被调用的函数被作为第一个参数被传递给另一个函数。当被调用时,这个会自动dequeues(将函数从队列中出列)下一个条目,并保持队列移动。
我们这样使用:
我们这样使用:
$("#test").queue(function(next) {
// Do some stuff...
next();
});
.dequeue( [queueName] )
为匹配元素执行队列上下一个函数
.dequeue([queueName])
queueName
类型是字符串。
包含队列名字的字符串。默认是fx,标准的效果队列。
.dequeue([queueName])
queueName
类型是字符串。
包含队列名字的字符串。默认是fx,标准的效果队列。
当.dequeue()被调用时,在队列中下一个函数被从队列中移除,然后执行。这个函数应该依次(直接的或间接的)的让.dequeue()被调用,这样序列能够继续执行。
.clearQueue( [queueName] )
移除队列上还没有被运行的函数
.clearQueue([queueName])
queueName
类型是字符串。
包含队列名字的字符串。默认是fx,标准的效果队列。
当.clearQueue()方法被调用时,所有的在队列上没有被执行的函数将被从队列中移除。当不使用参数时,.clearQueue()从fx中移除剩余的函数,标准有效的队列。这样的方式和.stop(true)是类似的。然而,尽管.stop()方法只会原本被用于动画,.clearQueue()也能够被用来移除被用.queue()方法添加到一般的jQuery队列中的任何函数。
.clearQueue([queueName])
queueName
类型是字符串。
包含队列名字的字符串。默认是fx,标准的效果队列。