Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2020
    Messaggi
    10

    Toggle classe e localstorage

    Buongiorno a tutti, prima di iniziare voglio ringraziare tutti per avermi accettato nel forum e spero che posso dare una mano anche io.
    Adesso arriviamo a noi, ho un problema e spero che possiate darmi una mano.
    Sto creando un piccolo progetto per un amico, il quale vuole creare un simulatore di una casa domotica.
    Dove entro in una stanza e accendo e spengo una lampadina.
    Fino a qui tutto bene ho realizzato la funzione tramite addclass e removeclass. Questo mio amico vuole che quando uno entra la lampada si trova nello stato in cui è stata lasciata o accesa o spenta. Per risolvere questo problema ho utilizzato localstorage che viene memorizzato l'evento e rimane in memoria.
    Il problema si presenta quando vado ad assegnare nelle condizioni lo stato della lampadina che mi fa premere due volte per cambiare stato.
    Io ho fatto come segue:
    codice:
    If (localstorage.getitem('test')=='Accesa'){
    $(". lampada"). addclass ("accesa");
    }else{
    $(". lampada"). removeclass ("accesa");
    }
    
    $(". lampada"). toggle (
    function() {
    $(". lampada"). addclass ("accesa");
    var localData = 'Accesa';
    localstorage.setitem("localData", localData);
    },
    function (){
    $(". lampada"). removeclass ("accesa");
    var localData = 'Accesa';
    localstorage.setitem("localData");
    });
    Ultima modifica di ciro78; 28-05-2020 a 20:59 Motivo: tag code

  2. #2
    Utente di HTML.it
    Registrato dal
    May 2020
    Messaggi
    10
    Auto... nessuno mi può aiutare?

  3. #3
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,248
    Ciao e benvenuto sul forum,
    ti invito, qualora non lo avessi già fatto, a leggere il regolamento e in particolare

    - uso del tag code
    - titoli significativi

    Aggiungerei inoltre di non essere impaziente. Ricorda che il supporto è gratuito.

    Detto questo, non è ben chiaro il tuo scopo.

    Noto che sia il primo evento che il secondo settano la variabili di localData su accesa. Inoltre, sempre nel secondo evento, passi il valore della variabile tra apici. Quindi non setti localData sulla variabile ma sulla stringa "localData"
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


  4. #4
    Utente di HTML.it
    Registrato dal
    May 2020
    Messaggi
    10
    Buonasera Ciro78, grazie per la risposta e scusate se non sono stato molto chiaro.
    Il mio problema si presenta nel fatto che quando apro la pagina mi rimane l'evento salvato ma quando vado a premere sul div devo cliccare due volte per cambiare stato.

  5. #5
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,248
    ok allora è corretto. la funzione toggle gestisce n eventi. per arrivare al secondo evento devi cliccare necessariamente due volte.

    ti consiglio di utilizzare la funzione click. e gestire la logica li. toggle , da documentazione ufficiale, risulta deprecato.
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


  6. #6
    Utente di HTML.it
    Registrato dal
    May 2020
    Messaggi
    10
    Grazie per la tua risposta.
    Ma scusa, come faccio ad utilizzare la funzione che mi evidenzi tu?

    Grazie e buona serata.

  7. #7
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,248
    Ciao
    codice:
    $( "#other" ).click(function() {
      //la tua logica
    });
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


  8. #8
    Utente di HTML.it
    Registrato dal
    May 2020
    Messaggi
    10
    Buongiorno,
    Grazie per il tuo aiuto, provo e ti faccio sapere.

    Buona giornata.

  9. #9
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,248
    nel caso siamo qui
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


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 © 2020 vBulletin Solutions, Inc. All rights reserved.