Configuré una cookie con éxito en el navegador, de modo que la cookie devolvió el valor de la cookie true
cuando se verificó y false
cuando no se verificó. Esta cookie cambia de un lado a otro cada vez que se hace clic en la casilla de verificación.
Esto es lo que necesito hacer:
true
, ejecuta addClass
. Si la cookie es false
, entonces ejecuta removeClass
.addClass
.removeClass
.Esto es lo que tengo, y no hay errores en la consola. Está funcionando ahora, pero hay un retraso después de la carga de la página. ¿Cómo puedo solucionarlo para eliminar el retraso?
var mytoggle = $.cookie('checkboxValue'); // gets the value saved if(mytoggle && mytoggle === "true") // (sees if cookie exists and has value of true) { $('body').addClass("myclass"); } else // (if cookie doesn't exist or value is false) { $('body').removeClass("myclass"); }
Básicamente, ve si hay una cookie con valor true
y, de ser así, agrega la clase. Pero si no hay ninguna cookie o el valor es false
, elimina la clase. Y si la casilla de verificación se activa mientras está en la página, agrega o elimina la clase.
¿Cómo puedo hacer que esto verifique la cookie y agregue o mueva la clase según el valor de la cookie, y también cambie la clase cuando la casilla de verificación está marcada o desmarcada?
Cookie es una cadena, no un booleano. Por lo tanto, debe usar if (cookie === "true")
. Además, no necesita verificar la existencia de cookies, no será igual a verdadero si no existe.
La palabra clave P. S var
es heredada y se considera una mala práctica. use let
o const
en su lugar.