Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it L'avatar di nourdine
    Registrato dal
    Nov 2005
    Messaggi
    1,130

    funzione ricorsiva e parametri passati

    devo creare una funzione ricorrsive attivata all'onclick su un link. questo link passa alla funzione un parametro; diciamo il valore 120:

    onclick="miaf('120')"

    io vorrei fare in modo che, nel processo di ricorsione, la chiamata da dentro a miaf() della miaf() stessa, permetta il passaggio del parametro originariamente spedito all'onclick. ho scritto una cosa così ma non funzione:

    function miaf(x){
    if(una certa condizone){
    return; // esce dalla funzione
    }
    else{
    fai qualcosa e poi ... ;
    setTimeout(miaf(x), 100);
    }
    }

    in grassetto la parte in cui dovrebbe esserci "la cattura" e il "ripassaggio" alla funzione del parametro inizialmente spedito dal click sul link.

    grazie

  2. #2
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    setTimeout('miaf("'+x+'")', 100);

  3. #3
    Utente di HTML.it L'avatar di nourdine
    Registrato dal
    Nov 2005
    Messaggi
    1,130
    ho sbagliato di poco insomma!

    grazie

  4. #4
    Giusto per precisare, e' meglio questa sintassi:
    setTimeout(function() { miaf(x); }, 100);


    Utile soprattutto se vuoi passare oggetti o funzioni.

  5. #5
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    arrivo in ritardo, ma ho recuperato anch'io questo
    codice:
    function lanciaAdattaImg(img)
    {
    	AdattaImg(img);
    }
    function AdattaImg(img, i)
    {
    	img.width += 50;
    	if(i == undefined) var i = 0;
    	i++;
    	if(i < 5) window.setTimeout(function(){AdattaImg(img, i)}, 3000);
    }
    Pietro

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.