jQuery1.9(动画效果)学习之—— .delay( duration [, queueName ] )

 

描述: 设置一个延时来推迟执行队列中后续的项。

 

.delay( duration [, queueName ] )

 

  • duration
    类型: Integer
    一个整数,指示的毫秒数,用于设定下个队列推迟执行的时间。
  • queueName
    类型: String
    一个作为队列名的字符串。默认是动画队列 fx。标准的效果队列。

在jQuery1.4中性增加的,.delay()方法允许我们将队列中的函数延时执行。它既可以推迟动画队列中函数的执行,也可以用于自定义队列。只有队列中连续的事件会延迟; 例如,不带参数的 .show() 或者 .hide()会延迟,因为他们没有使用效果队列

延时时间(duration参数)是以毫秒为单位的,数值越大,动画越慢,不是越快。字符串 'fast''slow' 分别代表200和600毫秒的延时。

使用标准效果列队,举个例子,我们可以在 <div id="foo">.slideUp().fadeIn() 动画之间设置800毫秒的延时:

 

$('#foo').slideUp(300).delay(800).fadeIn(400);

 当这句语句执行的时候,这个元素会以300毫秒的卷起动画,接着暂停800毫秒,最后有400毫秒的淡入动画

 

 

.delay()是用来在jQuery动画效果和类似队列中是最好的。但是,由于其本身的限制,比如无法取消延时——.delay(),它不是JavaScript的原生 setTimeout函数的替代品,这可能是更适合某些使用情况。

 

例子:

隐藏再显示两个div。其中绿色的div在显示之前,有800毫秒的延时:
<!DOCTYPE html>
<html>
<head>
<style>
div { position: absolute; width: 60px; height: 60px; float: left; }
.first { background-color: #3f3; left: 0;}
.second { background-color: #33f; left: 80px;}
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
</head>
<body>
<p><button>Run</button></p>
<div class="first"></div>
<div class="second"></div>
<script>
$("button").click(function() {
$("div.first").slideUp(300).delay(800).fadeIn(400);
$("div.second").slideUp(300).fadeIn(400);
});</script>
</body>
</html>

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值