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