跳转到主内容
websoft网络软件专家 - 深耕网络技术,打造实用软件!

jQuery.delay() 函数使用实例详解

delay()函数用于延迟 队列 中下一项的执行。 delay()可以将队列中等待执行的下一个动画延迟指定的时间后才执行。它常用在队列中的两个jQuery效果函数之间,从而在上一个动画效果执行后延迟下一个动画效果的执行时间。 如果下一项不是效果动画,则它不会被加入效果队列中,因此该函数不会对它进行延迟调用。 该函数属于jQuery对象(实例)。 语法 jQuery 1.4 新增该函数。 jQueryObject.delay( duration [, queueName ] ) 参数 参数 描述 duration 可选/ String /Number类型指定延迟多少时间(毫秒数),默认值为400。该参数也可以为 字符串 "fast"(=200)或"slow"(=600)。 queueName 可选/String类型指定的队列名称,默认为"fx",表示jQuery标准的效果队列。 返回值 delay() 函数的返回值 为jQuery类型,返回当前jQuery对象本身。 示例&说明 请参考下面这段初始HTML代码:

动画效果:

CodePlayer
以下是与delay()函数相关的jQuery示例代码,以演示delay()函数的具体用法:
$("#exec").click( function(){ var v = $("#animation").val(); var $myDiv = $("#myDiv"); if(v == "1"){ $myDiv.slideUp( 1000 ) .delay( "slow" ) .fadeIn( 1500 ); }else if(v == "2"){ $myDiv.fadeOut( "slow" ) .delay( 2000 ) .slideDown( 1000 ) .animate( { height: "+=300" } ); }else if(v == "3"){ /* 注意:只有动画才会被加入效果队列中 以下代码实际上只有slideUp()、slideDown()会加入效果队列 delay()的延迟只对slideDown()起作用 show()在被调用时就立即执行了(此时slideUp的动画效果尚未执行结束) 以下代码的执行顺序时: 1、slideUp()被加入队列、开始执行, 2、show()也开始执行,它立即执行完毕,此时slideUp()的动画尚未执行结束 3、延迟2秒 4、执行SlideDown() */ $myDiv.slideUp( "slow" ) .delay( 2000 ) .show( ) // 它不是一个效果动画 .slideDown( ); }else if(v == "4"){ $myDiv.show() .delay( 2000 ) // 在现有高度的基础上增加300px (如果原来是100px,增加后就是400px) .animate( { height: "+=300px" }, 2000 ) .animate( { width: "50%" }, 1000 ) .animate( { width: "200px", height: "100px" }, 1000 ); } } );

相关文章