Jquery slideToggle&饼干

时间:2012-07-03 16:14:38

标签: jquery cookies slidetoggle

我仍然是jquery的新手,我得到了这个slideToggle容器, 但现在我想保存一个cookie,如果容器被隐藏或不是这样 如果刷新页面,它将保持当前状态。

我听说过jquery cookie插件,但说实话并不是真的理解它。 :(

任何人都可以帮助我吗?

到目前为止,我的代码非常简单:

$(function(){
 $("#hideslide").click(function(){
  $(this).next().slideToggle();
 });
});

非常感谢任何帮助

2 个答案:

答案 0 :(得分:3)

jQuery Cookie插件(found here)是在jQuery中使用cookie的最简单方法。

要设置Cookie,请执行以下操作:

$.cookie("name", "content");

获取cookie同样简单:

$.cookie("name");

因此,如果设置了cookie,您应该检查页面加载:

if($.cookie("name") != null) {
    // Cookie set, action here
}

点击要切换的项目,检查是否设置了Cookie。如果已设置,请将其删除,否则请将其设置为:

if($.cookie("name") != null) {
    $.cookie("name", null); (null as value will remove the cookie)
}
else {
    $.cookie("name", "content");
}

我自己使用这个插件,这就是你所需要的。容易。

答案 1 :(得分:0)

如果您的客户端浏览器目标是IE8 +,那么您可以,我认为应该使用localStorage

localStorage.setItem('mySlideState', "open");

然后测试:

if(localStorage.getItem('mySlideState') == 'open') {
    //do stuff
}

您可以通过slideToggle

上的回调来实现此目的
$('#highSlide').slideToggle(function () {
    //set localStorage to value here
});

Mozilla文档:https://developer.mozilla.org/en/DOM/Storage