[jQuery] Far apparire un div per qualche secondo

sunlightbanana

Utente Attivo
26 Ott 2011
96
0
6
Salve,
chiedo il vostro aiuto per un problema, creo un div, ma poi voglio che scompaia dopo un tot di secondi, ho provato ad usare questo codice:
Codice:
var div= "<div id='div'></div>"

           $("body").prepend(div);

           function chiudi(){
               $(div).fadeOut(500);
           }
           setTimeout(chiudi(),2000)
        }
il div appare regolarmente e occupa tutto lo schermo grazie ai css, ma poi non se ne va con il fadeOut.

Vorrei sapere dove sbaglio.

Grazie mille a tutti
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Ciao, hai sbagliato ad indicare il selettore, la sintassi corretta è questa
Codice:
$("#div").fadeOut(500);
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
la variabile la devi dare come parametro alla funzione prepend(), li devi indicare l'id del div che si deve chiudere
prova questo che funziona
HTML:
<html>
    <head>
        <script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
        <style>
            div#div {
                width: 120px;
                height: 120px;
                background-color: red;
            }
        </style>
        <script type="text/javascript">
            $(document).ready(function(){
                var div = "<div id='div'></div>";

                $("body").prepend(div);
            
                setTimeout(function(){
                    $("#div").fadeOut(500);
                },2000)
            })    
        </script>
    </head>
    <body>

    </body>
</html>