Wie kann ich delay () mit show () und hide () in Jquery verwenden?


Antworten:


166

Übergeben Sie eine Dauer an show()und hide():

Wenn eine Dauer angegeben wird, .show()wird dies zu einer Animationsmethode.

Z.B element.delay(1000).show(0)

DEMO


3

Der einfachste Weg ist, eine "gefälschte Show" mit jquery zu machen.

element.delay(1000).fadeIn(0); // This will work

2

Warum versuchen Sie es nicht mit fadeIn (), anstatt show () mit delay () zu verwenden ? Ich denke, was Sie versuchen zu tun, kann damit getan werden. Hier ist der jQuery-Code für fadeIn und FadeOut (), der auch eine eingebaute Methode zum Verzögern des Prozesses enthält.

$(document).ready(function(){
   $('element').click(function(){
      //effects take place in 3000ms
      $('element_to_hide').fadeOut(3000);
      $('element_to_show').fadeIn(3000);
   });
}

Einblenden und etwas mit Verzögerung zeigen sind zwei völlig verschiedene Dinge
lcjury

1

von jquery api

Mit der in Version 1.4 zu jQuery hinzugefügten .delay()Methode können wir die Ausführung von Funktionen verzögern, die in der Warteschlange folgen. Es kann mit der Standardeffektwarteschlange oder mit einer benutzerdefinierten Warteschlange verwendet werden. Nur nachfolgende Ereignisse in einer Warteschlange werden verzögert. Dies verzögert beispielsweise nicht die Formen ohne Argumente von .show()oder .hide()die die Effektwarteschlange nicht verwenden.

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

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.