页面刷新或页面加载后保留添加的jquery类

时间:2018-07-31 06:32:30

标签: jquery

我的jquery代码:请让我知道如何在重新加载页面后保持类

$(document).ready(function(){   
  $("#themecolors li a").click(function(){
    $("#themecolors li a").removeClass("working");
    $(this).addClass("working");
  });

  $(".default-theme").click(function() {
    $("body").removeClass();
    $("body").addClass("one");
  });
 $(".green-theme").click(function() {
    $("body").removeClass();
    $("body").addClass("green_skin");           
    });
});

3 个答案:

答案 0 :(得分:0)

重新加载页面时,将再次下载JS文件,因此您无法在JS中保存状态。

您可以为此使用cookie。看到这里:How do I set/unset a cookie with jQuery?

答案 1 :(得分:0)

您可以像这样使用您的代码

jQuery(window).on("load", function() {
  $("#themecolors li a").click(function(){
  $("#themecolors li a").removeClass("working");
  $(this).addClass("working");
});

$(".default-theme").click(function() {
  $("body").removeClass();
  $("body").addClass("one");
});
$(".green-theme").click(function() {
 $("body").removeClass();
 $("body").addClass("green_skin");           
 });
});

答案 2 :(得分:0)

检查以下代码。您可以单击将类值添加到本地存储中。可以在准备好文档时使用该本地存储。

 $("#themecolors li a").click(function(){
    $("#themecolors li a").removeClass("working");
    $(this).addClass("working");
    localStorage.ClassName = "working";
  });

$(document).ready(function() {
    SetClass();
});

function SetClass() {
//before assigning class check local storage if it has any value
    $("#themecolors li a").addClass(localStorage.ClassName);
}

相关问题