【问题标题】:How can i store locally a collapsed or expanded state via cookies (JS/jQ)如何通过 cookie (JS/jQ) 在本地存储折叠或展开状态
【发布时间】:2017-10-09 09:30:54
【问题描述】:

您好,我对 JS 的了解非常业余,即使这是轻描淡写的,但我仍在学习,所以请多多包涵。

问题:

我实际上在本地项目中使用用户 sanman 的 sn-p https://stackoverflow.com/a/16303790/7981697

我能够实现它并且它也可以工作,但现在我想通过本地存储的 cookie 存储折叠或展开状态 (我听说这是最有效的方法,但请随时更正如果我错了,我在这里)

我的实际 JS:

$(document).ready(function() { 
var clicked = 0;
$('.sidebar_button').on('click',function(){
if(clicked===0){
collapse();
clicked = 1;    
}
else if(clicked===1){
expand();
clicked = 0;
}           
})
function collapse(){
$('.sidebar').animate({
'width':'25%'
},0);
$('.content').animate({
'width':'75%'
},0);
}
function expand(){
$('.sidebar').animate({
'width':'0%'
},0);
$('.content').animate({
'width':'100%'
},0);
}
});
$(document).ready(function() { 
var clicked = 0;
$('.topbar_button').on('click',function(){
if(clicked===0){
collapse();
clicked = 1;    
}
else if(clicked===1){
expand();
clicked = 0;
}           
})      
function collapse(){
$('.topbar').animate({
'height':'100%'
},0);   
}
function expand(){
$('.topbar').animate({
'height':'0px'
},0);
}
});

我在 stackoverflow 上尝试了很多其他线程和建议,但我无法实现其中任何一个,因为 JS 结构完全不同,所以如果你能在上下文中提供直接指导,这将有很大帮助我提供的 JS sn-p 甚至可能带有一个 jsfiddle 演示,因为这对我来说也更容易理解整个方法。

与此同时,我会尝试以某种方式通过反复试验来解决它。

提前谢谢你:)

【问题讨论】:

标签: javascript jquery cookies state store


【解决方案1】:

我个人认为 Local Storage 比 cookie 更好,因为您可以在其中存储所有内容(仅 cookie 中的字符串),并且更易于使用。要存储您的变量,只需执行localStorage.setItem("name", value); 并访问它:localStorage.getItem( "name") 更多信息:https://developer.mozilla.org/en-US/docs/Web/API/Storage/LocalStorage

为了更多的浏览器兼容性,您还可以使用window.localStorage

【讨论】:

  • 是的,根据我目前的研究,这似乎是最好的解决方案。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-07-03
  • 1970-01-01
  • 2011-06-23
  • 1970-01-01
  • 2011-05-10
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多