Javascript 边栏没有保持折叠状态
我使用的前端为我的网站 它有一个默认弹出的侧菜单,可以折叠 这个主题没有任何方法可以在页面之间记住它,所以我使用HTML5中的本地存储来记住他们的选择,然后在页面上实现它 这样做的问题是,它必须等待页面加载,默认情况下菜单最大化,然后我的脚本检查存储加载,检查菜单是否应折叠,然后关闭菜单,以及执行此操作的动画 因此,每次页面更改或重新加载时,用户都会看到菜单崩溃 您可以通过下面的链接了解我的意思-关闭菜单,然后刷新页面时,它会再次弹出: 这是我用来关闭它的脚本:Javascript 边栏没有保持折叠状态,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我使用的前端为我的网站 它有一个默认弹出的侧菜单,可以折叠 这个主题没有任何方法可以在页面之间记住它,所以我使用HTML5中的本地存储来记住他们的选择,然后在页面上实现它 这样做的问题是,它必须等待页面加载,默认情况下菜单最大化,然后我的脚本检查存储加载,检查菜单是否应折叠,然后关闭菜单,以及执行此操作的动画 因此,每次页面更改或重新加载时,用户都会看到菜单崩溃 您可以通过下面的链接了解我的意思-关闭菜单,然后刷新页面时,它会再次弹出: 这是我用来关闭它的脚本: //using local
//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它不起作用-仍然发生。事实上,您无法控制它的发生,因为它等待所有文档元素完全加载。如果您在服务器端保留首选项并相应地设计视图,则效果会更好。。