Javascript 边栏没有保持折叠状态

Javascript 边栏没有保持折叠状态,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我使用的前端为我的网站 它有一个默认弹出的侧菜单,可以折叠 这个主题没有任何方法可以在页面之间记住它,所以我使用HTML5中的本地存储来记住他们的选择,然后在页面上实现它 这样做的问题是,它必须等待页面加载,默认情况下菜单最大化,然后我的脚本检查存储加载,检查菜单是否应折叠,然后关闭菜单,以及执行此操作的动画 因此,每次页面更改或重新加载时,用户都会看到菜单崩溃 您可以通过下面的链接了解我的意思-关闭菜单,然后刷新页面时,它会再次弹出: 这是我用来关闭它的脚本: //using local

我使用的前端为我的网站

它有一个默认弹出的侧菜单,可以折叠

这个主题没有任何方法可以在页面之间记住它,所以我使用HTML5中的本地存储来记住他们的选择,然后在页面上实现它

这样做的问题是,它必须等待页面加载,默认情况下菜单最大化,然后我的脚本检查存储加载,检查菜单是否应折叠,然后关闭菜单,以及执行此操作的动画

因此,每次页面更改或重新加载时,用户都会看到菜单崩溃

您可以通过下面的链接了解我的意思-关闭菜单,然后刷新页面时,它会再次弹出:

这是我用来关闭它的脚本:

 //using local storage to remember if sidebar toggled
 $(document).ready(function(){
   if (Boolean(localStorage.getItem("sidebar-toggle-collapsed", "1"))) { //check if sidebar-toggle-collapsed is set to 1 in local storage
     $("body").removeClass('sidebar-collapse'); //make sidebar large
   }
   if (Boolean(localStorage.getItem("sidebar-toggle-collapsed", ""))) { //check if sidebar-toggle-collapsed is set to nothing in local storage
     $("body").addClass('sidebar-collapse'); //make sidebar small (collapsed)
   }
   $('.sidebar-toggle').click(function() {
       if (Boolean(localStorage.getItem("sidebar-toggle-collapsed"))) {
         localStorage.setItem("sidebar-toggle-collapsed", "");
       } else {
         localStorage.setItem("sidebar-toggle-collapsed", "1");
       }
     });
 })
)


我怎样才能让它保持崩溃状态,而不让人们在每次加载页面时看到它的发生?我可能可以通过将他们的选择存储在数据库中来实现这一点,但这样做似乎很愚蠢,这就是为什么我想看看是否有任何方法可以先做这个前端。

所以,如果他们关闭
菜单,它应该在页面刷新时关闭,如果他们保持打开,它应该在页面重新加载时保持打开,对吗?@GuruprasadRao正确。如上所述,使用本地存储时,它会记住用户的选择并工作,但它总是从最大化开始,然后关闭。导致用户每次进入新页面时都会看到侧边栏关闭。请尝试将其从
文档中删除。准备好
并将其放置在外部。@GuruprasadRao它不起作用-仍然发生。事实上,您无法控制它的发生,因为它等待所有文档元素完全加载。如果您在服务器端保留首选项并相应地设计视图会更好。因此,如果他们在页面刷新时关闭
菜单
,它应该在页面重新加载时关闭,如果他们保持打开,它应该在页面重新加载时保持打开,对吗?@guruprasadao正确。如上所述,使用本地存储时,它会记住用户的选择并工作,但它总是从最大化开始,然后关闭。导致用户每次进入新页面时都会看到侧边栏关闭。请尝试将其从
文档中删除。准备好
并将其放置在外部。@GuruprasadRao它不起作用-仍然发生。事实上,您无法控制它的发生,因为它等待所有文档元素完全加载。如果您在服务器端保留首选项并相应地设计视图,则效果会更好。。