如何使用 jquery cookie 插件保存 toggleClass 方法的状态

How to save state of toggleClass method using jquery cookie plugin

我知道我看过类似的问题,但答案对我来说还没有用。

所以我试图保存 JavaScript toggleClass 方法的状态,以便当用户刷新页面时加载保存的状态。目前它只是像往常一样恢复到原始状态。我正在尝试使用 jquery cookie 插件 https://github.com/carhartl/jquery-cookie

来做到这一点

我的代码如下

 $(document).ready(function(){
   $(".steps").click(function(){
   $(this).toggleClass("selected");
   $.cookie("selected", $(this).hasClass("selected"));
  });
});    

控制台中没有显示任何错误,所以我很想知道答案。

$(document).ready(function(){
if($.cookie("selected")){
    $(".steps").addClass("selected");
} 

   $(".steps").click(function(){
   $(this).toggleClass("selected");
   $.cookie("selected", $(this).hasClass("selected"));
  });
});  

确保布尔值已设置。您存储一个字符串但需要一个布尔值

JSFIDDLE

$(document).ready(function(){
   var sel = $.cookie("selected"); // get the cookie
   sel = sel=="true"; // convert to boolean - null is false, "false" is false
   $(".steps").toggleClass("selected",sel); // initial
   $(".steps").on("click",function() {
     var $this = $(this);
     sel = !sel; // toggle
     $this.toggleClass("selected",sel); // toggles
     $.cookie("selected", sel,{ expires: 7, path: '/' });
  });
});