14 messaggi dal 26 giugno 2002
Esiste una funzione che mi provoca un ritardo nell'esecuzione del codice ?

Giuliano

Giuliano
11.886 messaggi dal 09 febbraio 2002
Contributi
Non esattamente... lo Sleep così com'è concepito in visual basic non c'è nei linguaggi di scripting (almeno mi pare che sia così per javascript e vbscript).
Col javascript devi agire per vie traverse, una è questa:

<script language="Javascript">
alert("Eseguo la prima linea di codice")
adesso = new Date()
dopo = newDate()
adesso.setSeconds(adesso.getSeconds()+5)
while (dopo < adesso){
dopo = new Date()
}
alert("Eseguo questa riga di codice dopo 5 secondi di pausa")
</script>


Questo però ha lo svantaggio che la pagina è BLOCCATA in quei 5 secondi, e non credo si possa interagire in alcun modo con essa.

L'altra soluzione, usando setTimeout(), è un po' più efficiente ma ti costringe a modificare un po' il codice. Esempio, se il codice all'inizio era così:

<script language="Javascript">
alert("Prima riga di codice da eseguire")
alert("Eseguo la seconda")
alert("...e la terza")
</script>

poi diventerà:

<script language="Javascript">
alert("Prima riga di codice da eseguire")
setTimeout("continua()",5000)
function continua(){
alert("Eseguo la seconda")
alert("...e la terza")
}
</script>

setTimeout può accettare 2 parametri: il primo è la funzione da eseguire allo scadere del tempo indicato nel secondo parametro (espresso in millisecondi). Includi sempre il primo parametro nelle virgolette, altrimenti non funziona. Ciaoo


Enjoy learning and just keep making
14 messaggi dal 26 giugno 2002
Grazie per l'aiuto.

Giuliano

Giuliano

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.