Navigazione

    Privacy - Termini e condizioni
    © 2020 Search On Media Group S.r.l.
    • Registrati
    • Accedi
    • CATEGORIES
    • Discussioni
    • Non letti
    • Recenti
    • Hashtags
    • Popolare
    • Utenti
    • Stream
    • Interest
    • Categories
    1. Home
    2. Categorie
    3. Coding e Sistemistica
    4. Coding
    5. [javascript] numero ad incremento progressivo
    Questa discussione è stata cancellata. Solo gli utenti con diritti di gestione possono vederla.
    • G
      gleenk User Attivo • ultima modifica di

      [javascript] numero ad incremento progressivo

      Ciao...
      Come faccio a fare in modo che, in ciclo for, ad ogni ciclo mi venga scritto il valore e non mi venga mostrata la stringa con tutti i valori?
      L'idea di fondo è quella di vedere un numero che aumenta di 1 ogni secondo...
      grazie

      sto usando jquery e ho scritto ciò ma non funza:
      [php]<script>
      $(document).ready(function () {
      setInterval("incrementa()", 1000);
      });

      function incrementa(){
      for (indice=0;indice<100;indice++){
      $('span.counter span').remove();
      $('span.counter').append('<span>'+indice+'</span>');
      }
      }
      </script>[/php]

      0 Miglior Risposta Ringrazia Cita Rispondi

        1 Risposta Ultima Risposta
      • A
        ayrton2001 Super User • ultima modifica di

        Ciao gleenk,
        la funzione incrementa viene richiamata?

        0 Miglior Risposta Ringrazia Cita Rispondi

          1 Risposta Ultima Risposta
        • G
          gleenk User Attivo • ultima modifica di

          ciao ayrton
          cioè? in che senso?

          0 Miglior Risposta Ringrazia Cita Rispondi

            1 Risposta Ultima Risposta
          • A
            ayrton2001 Super User • ultima modifica di

            Hai provato per esempio a mettere un alert dentro la funzione incrementa in modo tale da verificare che venga effettivamente richiamata dalla funzione setInterval?

            0 Miglior Risposta Ringrazia Cita Rispondi

              1 Risposta Ultima Risposta
            • G
              gleenk User Attivo • ultima modifica di

              Ciao ayrton. con l'alert funziona, il problema è il remove, anzichè mostrarmi il ciclo mi stampa direttamente 100

              0 Miglior Risposta Ringrazia Cita Rispondi

                1 Risposta Ultima Risposta
              • A
                ayrton2001 Super User • ultima modifica di

                @gleenk said:

                Ciao ayrton. con l'alert funziona, il problema è il remove, anzichè mostrarmi il ciclo mi stampa direttamente 100
                E' corretto. Il codice fa questo.
                Scrive 1 e lo elimina, scrive 2 e lo elimina fino a 100 senza infine eliminarlo.

                0 Miglior Risposta Ringrazia Cita Rispondi

                  1 Risposta Ultima Risposta
                • G
                  gleenk User Attivo • ultima modifica di

                  Ok, e come faccio a fare in modo che però queste fasi vengano mostrate e non venga mostrata solo l'ultima? cioè come posso fare:

                  rimuovi
                  stampa (attendi 0.5secondi)
                  rimuovi ecc...

                  0 Miglior Risposta Ringrazia Cita Rispondi

                    1 Risposta Ultima Risposta
                  • A
                    ayrton2001 Super User • ultima modifica di

                    Cosi (non l'ho testata):

                    
                    <script>
                    $(document).ready(function () {
                    for (indice=0;indice<100;indice++){
                        setInterval(function() { incrementa(indice); }, 500);
                    }
                    });
                    
                    function incrementa(indice){
                            $('span.counter span').remove();
                            $('span.counter').append('<span>'+indice+'</span>');   
                    }
                    </script>  
                    
                    
                    0 Miglior Risposta Ringrazia Cita Rispondi

                      1 Risposta Ultima Risposta
                    • G
                      gleenk User Attivo • ultima modifica di

                      niet, esce sempre 100... uffffff

                      0 Miglior Risposta Ringrazia Cita Rispondi

                        1 Risposta Ultima Risposta
                      • A
                        ayrton2001 Super User • ultima modifica di

                        Prova cosi:

                        
                        <script>
                        $(document).ready(function () {
                        var indice = 1;
                            setTimeout(function() { incrementa(indice); }, 500);
                        });
                        
                        function incrementa(indice){
                                $('span.counter span').remove();
                                $('span.counter').append('<span>'+indice+'</span>');
                        if(indice<=100) {
                        indice++;
                        setTimeout(function() { incrementa(indice); }, 500);
                        }
                        }
                        </script>
                        
                        
                        0 Miglior Risposta Ringrazia Cita Rispondi

                          1 Risposta Ultima Risposta
                        • G
                          gleenk User Attivo • ultima modifica di

                          Siiiiiiiiiiiiiiiiii mitico ayrton!
                          ma dannazione xè così va? XD

                          0 Miglior Risposta Ringrazia Cita Rispondi

                            1 Risposta Ultima Risposta
                          • A
                            ayrton2001 Super User • ultima modifica di

                            @gleenk said:

                            Siiiiiiiiiiiiiiiiii mitico ayrton!
                            ma dannazione xè così va? XD

                            Perché il for viene eseguito in millesimi di secondo (da 1 a 100) dunque ad occhio si vedeva solo l'effetto dell'ultimo for (il 100°)
                            In questo modo invece, con il setTimeout(), ogni volta che viene eseguita la funzione incrementa si attendono 0,5 secondi e poi viene richiamata nuovamente fino a quando indice non è maggiore di 100.

                            0 Miglior Risposta Ringrazia Cita Rispondi

                              1 Risposta Ultima Risposta
                            Caricamento altri post
                            Rispondi
                            • Topic risposta
                            Effettua l'accesso per rispondere
                            • Da Vecchi a Nuovi
                            • Da Nuovi a Vecchi
                            • Più Voti