jQuery ข้อมูล - ฟังก์ชัน queue()
ตัวอย่าง
แสดงความยาวของคู่ต่อหนึ่ง:
function showIt() { var n = div.queue("fx"); $("span").text( n.length ); setTimeout(showIt, 100); }
คำนิยามและวิธีใช้
queue() ฟังก์ชันแสดงหรือปฏิบัติการคู่ต่อหนึ่งที่ทำงานบนองค์ประกอบที่ที่ตรงกันข้าม
ศัพท์
.queue(queueName)
ตัวแปร | คำอธิบาย |
---|---|
queueName | เลือกตั้ง มีค่าตัวอักษร ประกอบด้วยชื่อของลำดับ โดยเริ่มต้นค่าเริ่มต้นคือ fx ตามมาตราฐานของลำดับที่มีผลกระทบ |
ปฏิบัติการคู่ต่อหนึ่ง
queue() ฟังก์ชันปฏิบัติการคู่ต่อหนึ่งที่ทำงานบนฟังก์ชันที่ทำงานบนองค์ประกอบที่ที่ตรงกันข้าม
ศัพท์
.queue(queueName,newQueue)
ตัวแปร | คำอธิบาย |
---|---|
queueName | เลือกตั้ง มีค่าตัวอักษร ประกอบด้วยชื่อของลำดับ โดยเริ่มต้นค่าเริ่มต้นคือ fx ตามมาตราฐานของลำดับที่มีผลกระทบ |
รายละเอียด
แต่ละองค์ประกอบสามารถมีหนึ่งถึงหลายฟังก์ชันที่เพิ่มโดย jQuery ได้ ในโปรแกรมส่วนใหญ่ ใช้เพียงคู่ต่อหนึ่ง (ชื่อว่า fx) คู่ต่อหนึ่งปฏิบัติการเรียกฟังก์ชันตามลำดับบนองค์ประกอบ โดยที่ไม่จะทำให้โปรแกรมหยุดทำงาน ตัวอย่างที่พบบ่อยคือการเรียกฟังก์ชันหลายต่อหลายขององค์ประกอบ ตัวอย่างเช่น:
$('#foo').slideUp().fadeIn();
เมื่อรายการนี้ทำงาน องค์ประกอบจะเริ่มทำการเคลื่อนไหวทันที แต่การทำงานของเปลืองลวงถูกจัดไว้ในคู่ fx และจะถูกเรียกใช้เมื่อเคลื่อนไหวเสร็จ
วิธี .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(); );