Więcej
Jak odczekać 5 sekund za pomocą jQuery?
Próbuję stworzyć efekt, w którym strona ładuje się, a po 5 sekundach komunikat o sukcesie na ekranie zanika, lub przesuwa się w górę.
Jak mogę to osiągnąć?
385
3
Wbudowany w javascript setTimeout.
UPDATE: chcesz czekać od momentu, gdy strona skończy się ładować, więc umieść ten kod wewnątrz swojego skryptu
$(document).ready(...);
.UPDATE 2: jquery 1.4.0 wprowadziło metodę
.delay
. Check it out. Zwróć uwagę, że .delay działa tylko z kolejkami efektów jQuery.Użyj zwykłego timera javascript:
To będzie czekać 5 sekund po tym jak DOM jest gotowy. Jeśli chcesz poczekać, aż strona zostanie faktycznie
załadowana
, musisz użyć tego:EDIT: W odpowiedzi na komentarz OP's pytającego, czy jest sposób, aby zrobić to w jQuery i nie używać
setTimeout
, odpowiedź brzmi nie. Ale jeśli chciałbyś, aby było to bardziej "jQueryish", mógłbyś zawinąć to w ten sposób:Następnie mógłbyś wywołać go w ten sposób:
Biblioteka Underscore udostępnia również funkcję "delay":