Costruisco la sintassi che mi ha fatto impazzire...
Questa è una "chiamata a catena" fra funzioni, che si passano un parametro. E qui va tutto bene. Il parametro dalla funzione chiamante() viene passato alla funzione chiamata() e qui messo in una casella di messaggio. Okay.
<script> function chiamata(parametro) { alert(parametro); } function chiamante() { var parametro="cicciobello"; chiamata(parametro); } </script> <body onClick= "chiamante()"> </body>
Adesso faccio passare il parametro direttamente dall'evento onClick di BODY:
<script> function chiamata(parametro) { alert(parametro); } function chiamante(parametro) { chiamata(parametro); } </script> <body onClick= "chiamante('cicciobello')"> <div id="testo" style="position:absolute;left:0px;top:50px;width:50px;height:50px;background-color:blue;color:green"></div> </body>
...e funziona ancora...
Adesso uso un setInterval:
<script> function chiamata(parametro) { alert(parametro); } function chiamante(parametro) { setInterval("chiamata(parametro)",5000); } </script> <body onClick= "chiamante('cicciobello')"> <div id="testo" style="position:absolute;left:0px;top:50px;width:50px;height:50px;background-color:blue;color:green"></div> </body>
...e il tutto mi rimane completamente muto!
Ho trovato questa sintassi, che pare risolutiva:
<script> function chiamata(parametro) { alert(parametro); } function chiamante(parametro) { setInterval(function() {chiamata(parametro)},5000); } </script> <body onClick= "chiamante('cicciobello')"> <div id="testo" style="position:absolute;left:0px;top:50px;width:50px;height:50px;background-color:blue;color:green"></div> </body>Forse il parametro, nel momento in cui viene passato nell'ambito di una stringa, non viene più riconosciuto? Boh! Questa assoluta assenza di rigore per quanto riguarda i tipi è l'aspetto che più mi confonde in JavScript!
Nessun commento:
Posta un commento