jQuery ±éÀú - jQuery.queue() ·½·¨
ʵÀý
ÏÔʾ¶ÓÁеij¤¶È£º
function showIt() {
var n = div.queue("fx")
;
$("span").text( n.length );
setTimeout(showIt, 100);
}
¶¨ÒåºÍÓ÷¨
queue() ·½·¨ÏÔʾ»ò²Ù×÷ÔÚÆ¥ÅäÔªËØÉÏÖ´Ðеĺ¯Êý¶ÓÁС£
×¢ÊÍ£ºÕâÊǵײ㼶µÄ·½·¨£»Ê¹Óà .queue() ¸ü¼Ó·½±ã¡£
Óï·¨
.queue(queueName)
²ÎÊý | ÃèÊö |
---|---|
queueName | ¿ÉÑ¡¡£×Ö·û´®Öµ£¬°üº¬ÐòÁеÄÃû³Æ¡£Ä¬ÈÏÊÇ fx, ±ê×¼µÄЧ¹ûÐòÁС£ |
²Ù×÷¶ÓÁÐ
queue() ·½·¨²Ù×÷ÔÚÆ¥ÅäÔªËØÉÏÖ´Ðеĺ¯Êý¶ÓÁС£
Óï·¨
.queue(queueName,newQueue)
²ÎÊý | ÃèÊö |
---|---|
queueName | ¿ÉÑ¡¡£×Ö·û´®Öµ£¬°üº¬ÐòÁеÄÃû³Æ¡£Ä¬ÈÏÊÇ fx, ±ê×¼µÄЧ¹ûÐòÁС£ |
Ïêϸ˵Ã÷
ÿ¸öÔªËØ¾ù¿ÉÓµÓÐÒ»µ½¶à¸öÓÉ jQuery Ìí¼ÓµÄº¯Êý¶ÓÁС£ÔÚ´ó¶àÊýÓ¦ÓóÌÐòÖУ¬Ö»Ê¹ÓÃÒ»¸ö¶ÓÁУ¨ÃûΪ fx£©¡£¶ÓÁÐÔËÐÐÔÚÔªËØÉÏÒì²½µØµ÷Óö¯×÷ÐòÁУ¬¶ø²»»áÖÕÖ¹³ÌÐòÖ´ÐС£µäÐÍÀý×Óʱµ÷ÓÃÔªËØÉϵĶà¸ö¶¯»·½·¨¡£ÀýÈ磺
$('#foo').slideUp().fadeIn();
µ±ÕâÌõÓï¾äÖ´ÐÐʱ£¬ÔªËØ»áÁ¢¼´¿ªÊ¼Æä»¬¶¯¶¯»£¬µ«ÊǵÈë¹ý¶É±»ÖÃÓÚ fx ¶ÓÁУ¬Ö»Óе±»¬¶¯¹ý¶ÉÍê³Éºó²Å»á±»µ÷Óá£
.queue() ·½·¨ÔÊÐíÎÒÃÇÖ±½Ó¶ÔÕâ¸öº¯Êý¶ÓÁнøÐвÙ×÷¡£µ÷ÓôøÓлص÷º¯ÊýµÄ .queue() ·½·¨ÌرðÓÐÓã»ËüÔÊÐíÎÒÃÇÔÚ¶ÓÁÐÄ©¶Ë·ÅÖÃÒ»¸öк¯Êý¡£
Õâ¸öÌØÐÔÓ붯»·½·¨Ìṩ»Øµ÷º¯ÊýÀàËÆ£¬µ«ÊÇÎÞÐèÔÚ¶¯»Ö´ÐÐʱÉèÖûص÷º¯Êý¡£
$('#foo').slideUp();
$('#foo').queue(function() {
alert('Animation complete.');
$(this).dequeue();
})
;
µÈ¼ÛÓÚ£º
$('#foo').slideUp(function() { alert('Animation complete.'); });
Çë×¢Ò⣬µ±Í¨¹ý .queue() Ìí¼Óº¯Êýʱ£¬ÎÒÃÇÓ¦µ±È·±£×îÖÕµ÷ÓÃÁË .dequeue()£¬ÕâÑùÏÂÒ»¸öÅŶӵĺ¯Êý²ÅÄÜÖ´ÐС£
Àý×Ó 1
¶Ô×Ô¶¨Ò庯Êý½øÐжÓÁвÙ×÷£º
$(document.body).click(function () { $("div").show("slow"); $("div").animate({left:'+=200'},2000); $("div").queue(function () { $(this).addClass("newcolor"); $(this).dequeue(); })
; $("div").animate({left:'-=200'},500); $("div").queue(function () { $(this).removeClass("newcolor"); $(this).dequeue(); })
; $("div").slideUp(); });
Àý×Ó 2
ÉèÖöÓÁÐÊý×éÀ´É¾³ý¶ÓÁУº
$("#start").click(function () {
$("div").show("slow");
$("div").animate({left:'+=200'},5000);
$("div").queue(function () {
$(this).addClass("newcolor");
$(this).dequeue();
});
$("div").animate({left:'-=200'},1500);
$("div").queue(function () {
$(this).removeClass("newcolor");
$(this).dequeue();
});
$("div").slideUp();
});
$("#stop").click(function () {
$("div").queue("fx", []);
$("div").stop();
});