¿Cómo puedo usar delay () con show () y hide () en Jquery?

Respuestas:

166

Pasar una duración a show()y hide():

Cuando se proporciona una duración, se .show()convierte en un método de animación.

P.ej element.delay(1000).show(0)

MANIFESTACIÓN

Felix Kling
fuente
3

La forma más fácil es hacer un "show falso" usando jquery.

element.delay(1000).fadeIn(0); // This will work
Luciano Damiano
fuente
2

¿Por qué no prueba fadeIn () en lugar de usar show () con delay ()? Creo que lo que estás intentando hacer se puede hacer con esto. Aquí está el código jQuery para fadeIn y FadeOut () que también tiene un método incorporado para retrasar el proceso.

$(document).ready(function(){
   $('element').click(function(){
      //effects take place in 3000ms
      $('element_to_hide').fadeOut(3000);
      $('element_to_show').fadeIn(3000);
   });
}
abhinav1602
fuente
FadeIn y mostrar algo con retraso son dos cosas completamente diferentes
lcjury
1

de jquery api

Agregado a jQuery en la versión 1.4, el .delay()método nos permite retrasar la ejecución de funciones que lo siguen en la cola. Se puede utilizar con la cola de efectos estándar o con una cola personalizada. Solo se retrasan los eventos posteriores de una cola; por ejemplo, esto no retrasará las formas sin argumentos de .show()o .hide()que no utilizan la cola de efectos.

http://api.jquery.com/delay/

Shakti Singh
fuente