jQuery切换cookie无法正常工作

时间:2014-02-12 19:29:46

标签: jquery jquery-cookie

我正在尝试使用jquery cookie插件切换cookie。这就是我的代码看起来的样子。切换工作正常,并设置cookie。该cookie正在浏览器中保存,我可以使用Chrome开发人员工具查看,但切换状态未保存。

    if(jQuery.cookie('toggledesc') == 1){
            jQuery('.cat_table .hentry').addClass('active_plgn');
            jQuery('.cat_table .hentry .desc_trigger').removeClass("fa-plus-square-o").addClass("fa-minus-square-o");
            jQuery('.desc_inner').css({"display":"block"});

        }

    //when clicked on .expand_desc set cookie/delete cookie
    jQuery( ".expand_desc" ).toggle(function() {
        jQuery('.cat_table .hentry').addClass('active_plgn');
        jQuery('.cat_table .hentry .desc_trigger').addClass("fa-plus-square-o fa-minus-square-o");
        jQuery('.desc_inner').slideDown();
        jQuery.cookie('toggledesc', 1, { expires: 7, path: '/'});
    }, function() {
        jQuery('.cat_table .hentry').removeClass('active_plgn');
        jQuery('.cat_table .hentry .desc_trigger').removeClass("fa-plus-square-o fa-minus-square-o");
        jQuery('.desc_inner').slideUp();
        jQuery.cookie('toggledesc', null);
    });

请让我知道我做错了什么。

由于

1 个答案:

答案 0 :(得分:1)

根据JQuery Cookie自述文件(https://github.com/carhartl/jquery-cookie),您可以使用以下内容删除Cookie:

$.removeCookie('the_cookie');

您必须使用相同的路径,域和安全选项,因此对于您的代码,您应该执行以下操作:

jQuery.removeCookie('toggledesc', { path: '/' });

我目前无法对此进行测试,但希望这可以解决您的问题。