[Php-it] [JS] simulare lo sleep.
Davide Michel 'ZioBudda' Morelli
michel at ziobudda.net
Thu Dec 28 14:57:58 CET 2006
Cristiano Verondini ha scritto:
> ________________SPONSOR______________
> Spazio pubblicitario libero.
> mail a info at ziobudda.net
>
>
>
> ________________SPONSOR______________
>
>>> No, continui a pensare in modo procedurale, non in modo asincrono.
>>
>> Ma non centra procedurale o asincrono è pura logica di funzionamento.
>> Se non ho una funzione bloccante, ma che richiama solamente una
>> funzione-terza dopo un tot di tempo, allora la prima istruzione dopo
>> la funzione-non-bloccante deve essere un qualche cosa che mi fermi
>> l'esecuzione dello script.
>
> Se ferma l'esecuzione dello script, non avendo i thread a
> disposizione, chi cambierà il valore della tua globale?
La funzione che viene richiamata da setTimeout. E' li apposta.
>
>> Tralasciando che il mio era solo una prova se questo non è il modo me
>> ne dici uno tu. Ma che sia funzionante. Non solo a parole.
>
> Mi sembra di avertelo suggerito. *DUE* funzioni. E quella che fa il
> setitimeout() *termina* dopo averlo fatto.
Non funziona! Tutto quello che viene dopo setTimeout viene eseguito.
Esempio:
<html>
<head>
<script language="javascript" type="text/javascript">
var timerid;
function mostra() {
tmp2= document.getElementById('miodiv');
tmp2.innerHTML = "Io sono mostra()<br>";
setTimeout("mostradopo()",1000);
tmp2.innerHTML += "Io sono ANCORA mostra() <br>";
}
function mostradopo() {
clearTimeout(timerid);
tmp2= document.getElementById('miodiv');
tmp2.innerHTML += "Io sono mostradopo()<br>";
}
</script>
</head>
<body>
<a href="#" onclick="mostra()">Clicca</a>
<div id="miodiv" style=""></div>
</body>
</html>
che da' come output:
Io sono mostra()
Io sono ANCORA mostra()
Io sono mostradopo()
Spero di essermi spiegato.
Michel.
--
Michel 'ZioBudda' Morelli michel at ziobudda.net
Consulenza sistemistica in ambito OpenSource.
Sviluppo applicazioni web dinamiche (LAMP+Ajax)
Telefono: +39-0240706096 -- Fax: +39-0291390660
http://www.ziobudda.net ICQ: 58351764
http://www.ziobuddalabs.it Skype: zio_budda
http://www.ajaxblog.it
More information about the Php-it
mailing list