¿Tiene que haber un objetivo? seguramente puede usar un objetivo aleatorio para poner en cola los eventos secuencialmente siempre que el objetivo sea constante ... a continuación, estoy usando el padre de un objetivo de animación para almacenar la cola.
//example of adding sequential effects through
//event handlers and a jquery event trigger
jQuery(document).unbind("bk_prompt_collapse.slide_up");
jQuery(document).bind("bk_prompt_collapse.slide_up" , function(e, j_obj) {
jQuery(j_obj).queue(function() {
//running our timed effect
jQuery(this).find('div').slideUp(400);
//adding a fill delay to the parent
jQuery(this).delay(400).dequeue();
});
});
//the last action removes the content from the dom
//if its in the queue then it will fire sequentially
jQuery(document).unbind("bk_prompt_collapse.last_action");
jQuery(document).bind("bk_prompt_collapse.last_action" , function(e, j_obj) {
jQuery(j_obj).queue(function() {
//Hot dog!!
jQuery(this).remove().dequeue();
});
});
jQuery("tr.bk_removing_cart_row").trigger(
"bk_prompt_collapse" ,
jQuery("tr.bk_removing_cart_row")
);
No
seguro de si es posible, pero parece que se podría unir .dequeue() para disparar cuando otro jquery desencadena el evento, en lugar de disparar en línea en mi ejemplo anterior? efectivamente detener una cola de animación?
.queue() es una función de solo elemento. Si tiene diferentes objetivos de animación, esto no funcionará. – Bora
No veo cómo no funcionaría; usted puede nombrar explícitamente el objetivo en la devolución de llamada, ¿verdad? – Webthusiast
¿Qué pasa si no hay un objetivo? No creo que Queue me funcione aquí, ya que mis dos métodos que deseo iniciar secuencialmente se refieren a objetivos diferentes. – Trip