2011-11-19 10 views

Respuesta

8

delay() solo afecta la cola de animación, pero trigger() es sincrónico. Puede utilizar queue() para programar una función activar los sucesos después de la demora:

$(".graphic").delay(500).queue(function(next) { 
    $(this).trigger("mouseover").trigger("mouseout"); 
    next(); 
}); 
+0

impresionante! Gracias :) –

2

El método .delay() es mejor para retrasar entre en cola efectos jQuery.

Para retrasar el efecto inicial, use la función setTimeout(). Por cierto, se puede utilizar en lugar de mouseover()trigger('mouseover')

setTimeout(function() { 
    $(".graphic").mouseover().mouseout(); 
}, 500); 
2

El jQuery API dice:

sólo los eventos posteriores en una cola se retrasan; por ejemplo, esto no retrasará las formas sin argumentos de .show() o .hide() que no usan la cola de efectos.

Tal vez se puede establecer un temporizador, que activará mouseover/out después de 500 ms utilizando Windows.setTimeout

Cuestiones relacionadas