Sto cercando di creare un effetto in cui la pagina si carica, e dopo 5 secondi, il messaggio di successo sullo schermo svanisce, o scivola in alto.
Come posso ottenere questo effetto?
Costruito in javascript setTimeout.
setTimeout(
function()
{
//do something special
}, 5000);
aggiornamento: vuoi aspettare da quando la pagina ha finito il caricamento, quindi metti quel codice dentro il tuo script $(document).ready(...);
.
.delay
. Check it out. Si noti che .delay funziona solo con le code di effetti di jQuery.Usa un normale timer javascript:
$(function(){
function show_popup(){
$("#message").slideUp();
};
window.setTimeout( show_popup, 5000 ); // 5 seconds
});
Questo aspetterà 5 secondi dopo che il DOM è pronto. Se vuoi aspettare che la pagina sia effettivamente caricata
devi usare questo:
$(window).load(function(){
function show_popup(){
$("#message").slideUp();
};
window.setTimeout( show_popup, 5000 ); // 5 seconds
})
EDIT: In risposta al commento dell'OP che chiedeva se c'è un modo per farlo in jQuery e non usare setTimeout
la risposta è no. Ma se vuoi renderlo più "jQueryish" potresti avvolgerlo come questo:
$.wait = function( callback, seconds){
return window.setTimeout( callback, seconds * 1000 );
}
Potresti poi chiamarlo in questo modo:
$.wait( function(){ $("#message").slideUp() }, 5);