Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    Funzioni in sequenza condizionate dalla scelta dell'utente

    Buona domenica, espongo il mio problema:
    Ho due funzioni che inseriscono degli elementi HTML nella pagina, una in modo automatico, l'altra in base al click dell'utente:
    codice:
    var x = document.getElementById('p');
    function a1() {
        x.innerHTML += ' a1';
    }
    function a2() {
        x.innerHTML += ' a2';
    }
    for (z = 0; z < 9; z++) {
    
    
    a1();
    
    
    x.onclick = function () {
        a2();
    };
    }
    Vorrei che ad ogni ripetizione, il ciclo compia questa sequenza per il numero di volte del for (9):
    - prima a1() una sola volta;
    - poi a2() tramite il click dell'utente;
    poi ricomincia
    Invece il codice sopra mi fa apparire a1() nove volte e a2() tante volte quanto clicco.

    Grazie a tutti per l'aiuto.

  2. #2
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,514
    non ho capito bene che vuoi fare ma hai un evento in un ciclo for. x.onclick.
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


  3. #3
    grazie per la risposta, vorrei che prima appaia a1 in automatico, poi tramite click appaia a2, poi di nuovo a1 in automatico, poi di nuovo tramite click a2, e così via

  4. #4
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,514
    se il problema è far ripartire il ciclo dopo il click basta chiamare il ciclo nella funzione a2 dopo l'inner
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


  5. #5
    Quote Originariamente inviata da ciro78 Visualizza il messaggio
    se il problema è far ripartire il ciclo dopo il click basta chiamare il ciclo nella funzione a2 dopo l'inner
    Come faccio a richiamare il ciclo se la funzione chiamata è all'interno del ciclo?

    Grazie per la tua pazienza

  6. #6
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,514
    codice:
    x.onclick =function(){
        a2();
    };
    fuori dal ciclo

    e al suo interno metti il ciclo in modo che dopo a2 sia inserito 9 volte a1
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


  7. #7
    Avevo tentato questa strada ma così il risultato è: a2 (click) a1 a1 a1 a1 a1 a1 a1 a1 a1
    Invece quello che vorrei ottenere è: a1 | a2 (click) | a1 | a2 (click) | a1 | a2 (click) | a1 ... etc.

  8. #8
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    codice:
    a1();
    x.onclick = function () {
        a2();
        a1();
    };
    senza ciclo

Tag per questa discussione

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.