jQuery数据篇-函数队列操作

.queue( [queueName] )

显示在匹配元素上会被执行的函数队列

.queue([queueName])

queueName

类型是字符串

一段包含队列名字的字符串。默认值是fx,标准的效果队列。


.queue( [queueName] , 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()被调用时,在队列中下一个函数被从队列中移除,然后执行。这个函数应该依次(直接的或间接的)的让.dequeue()被调用,这样序列能够继续执行。

.clearQueue( [queueName] )

移除队列上还没有被运行的函数
.clearQueue([queueName])
queueName
类型是字符串。
包含队列名字的字符串。默认是fx,标准的效果队列。


当.clearQueue()方法被调用时,所有的在队列上没有被执行的函数将被从队列中移除。当不使用参数时,.clearQueue()从fx中移除剩余的函数,标准有效的队列。这样的方式和.stop(true)是类似的。然而,尽管.stop()方法只会原本被用于动画,.clearQueue()也能够被用来移除被用.queue()方法添加到一般的jQuery队列中的任何函数。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值