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

    problema con il click e AddEventListener

    Salve a tutti, sono qui per chiedervi un chiarimento riguardo questo comando.
    Il problema � apparentemente semplice ma poich� il mio codice non funziona credo che mi stia sfuggendo qualcosa. Quello che vorrei ottenere �: clicco qualcosa (div, button, img o altro) e spunta fuori qualcos'altro (testo img o altro), fin qui tutto ok, basta impostare l'AddEventListener. Ma se io volessi fare in modo che se io ricliccassi quel qualcosa (div, button, img o altro) tornassi alla situazione precedente?

    vi inserisco dei codici che avevo buttato gi� (evidentemente sbagliando qualcosa):
    codice HTML:
    <body>    <div id="quadro" onclick="scritta()" style="width:100%; height: 100px; border: 2px solid red;" ><center><h2>clicca nella casella rossa</h2></center></div>    <center><h1>aspetta</h1></center>    <script src="app.js"></script></body>
    Ho semplicemente un riquadro. L'intenzione � quella di cliccare e quindi l' 'aspetta' si trasforma in 'hai cliccato'. Se io clicco di nuovo voglio che si ritorni a visualizzare l' 'aspetta'.

    quindi il codice js
    codice:
    let quadro=document.getElementById('quadro');
    let h1= document.querySelector('h1');
    quadro.addEventListener("click", scritta);
    function scritta() {   
        if (h1.textContent="aspetta") {
            h1.textContent="hai cliccato";
        } else if ( h1.textContent="hai cliccato") {
            h1.textContent="aspetta";
        }
    }
    

    questo problema mi � sorto nel momento in cui ho deciso di formattare un modello di men� a tendina per sito web (visualizzazione per mobile): il men� si apriva ma poi non si richiudeva, pertanto ho deciso di creare un esempio che potesse essere spiegato pi� facilmente possibile su un forum.

    grazie in anticipo delle risposte!

  2. #2
    Utente di HTML.it L'avatar di ninja72
    Registrato dal
    May 2020
    residenza
    -
    Messaggi
    319
    c'è un errore in come definisci l'operatore di confronto all'interno della if.

    if (h1.textContent == "aspetta") {
    ps. onclick="scritta()" lo puoi eliminare.
    Ultima modifica di ninja72; 05-02-2021 a 17:36

  3. #3
    grazie mille, ora funziona ed ho capito il perchè!

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.