Visualizzazione dei risultati da 1 a 3 su 3

Discussione: Ritardo ciclo for

  1. #1

    Ritardo ciclo for

    Ciao a tutti, volevo semplicemente aprire un div con effetto tendina, ho quindi pensato di usare dentro un ciclo la getElementById per cambiare lo stile. Vi posto il codice:
    Codice PHP:
    for(i=0i<larghezzai++) {
        var 
    funzione 'scorri('+i+')';
        
    setTimeout(funzione,100);

    Naturalmente la funzione scorri č semplicemente questa:
    Codice PHP:
    function scorri(indice) {
        
    document.getElementById('sinistra').style.width=indice+'px';

    La cosa funziona, il problema č che con la setTimeout, anche usando un ritardo, non mi blocca il ciclo. Praticamente il tempo che passano i 100 millisecondi il for č giā concluso.
    Quindi mi servirebbe qualcosa del tipo:
    Codice PHP:
    for(i=0i<larghezzai++) {
        
    scorri(i);
        
    pausa();

    Ho giā provato a costruirmi io una funzione pausa mettendoci un banalissimo ciclo che fa ritardo ma niente da fare. Vi ringrazio anticipatamente. Ciao

  2. #2
    Utente di HTML.it L'avatar di floyd
    Registrato dal
    Apr 2001
    Messaggi
    3,837
    codice:
    var funzione = 'scorri(0)';
    setTimeout(funzione, 100);
    function scorri(indice) {
      document.getElementById('sinistra').style.width = indice + 'px';
      if (indice < 100)
        setTimeout('scorri(' + ++indice + ')', 100);
    }
    prova questo

  3. #3
    Non ci avevo proprio pensato a fare una ricorsiva .
    Sei un grande! Grazie

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.