Es mēģinu izveidot efektu, kad lapa ielādējas un pēc 5 sekundēm uz ekrāna parādās paziņojums par panākumiem, kas izbalē vai izplūst uz augšu.
Kā to panākt?
Iebūvēts javascript setTimeout.
setTimeout(
function()
{
//do something special
}, 5000);
DATUMS: jūs vēlaties gaidīt, kad lapa ir pabeigusi ielādēšanu, tāpēc ievietojiet šo kodu savā $$(document).ready(...);
skripta iekšpusē.
ŪPATNĪJUMS 2: jquery 1.4.0 ieviesa .delay
metodi. Pārbaudiet to. Ņemiet vērā, ka .delay darbojas tikai ar jQuery efektu rindām.
Izmantojiet parastu javascript taimeri:
$(function(){
function show_popup(){
$("#message").slideUp();
};
window.setTimeout( show_popup, 5000 ); // 5 seconds
});
Tas gaidīs 5 sekundes pēc tam, kad DOM būs gatavs. Ja vēlaties gaidīt, līdz lapa ir faktiski iegādāta
, jums jāizmanto šis taimeris:
$(window).load(function(){
function show_popup(){
$("#message").slideUp();
};
window.setTimeout( show_popup, 5000 ); // 5 seconds
})
EDIT: Atbildot uz OP komentāru, kurā jautāts, vai ir veids, kā to izdarīt ar jQuery un neizmantot setTimeout
, atbilde ir nē. Bet, ja jūs gribētu, lai tas būtu vairāk "jQueryish", jūs varētu to ietīt šādi:
$.wait = function( callback, seconds){
return window.setTimeout( callback, seconds * 1000 );
}
Tad jūs varētu to izsaukt šādi:
$.wait( function(){ $("#message").slideUp() }, 5);