【问题标题】:jQuery toggle cookie not workingjQuery切换cookie不起作用
【发布时间】:2014-02-13 03:44:17
【问题描述】:

我正在尝试使用 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);
    });

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

谢谢

【问题讨论】:

    标签: jquery jquery-cookie


    【解决方案1】:

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

    $.removeCookie('the_cookie');
    

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

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

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

    【讨论】:

    • 奇怪的是它不适合你。我为它写了一个 jsFiddle,它似乎按预期工作。 jsfiddle.net/LbNU3 也许你可以写一个 jsfiddle 和更多的代码给我看?
    • 您的示例 jsfiddle 无法正常工作。当我点击“切换”按钮时没有任何反应。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-11-07
    • 2011-01-20
    • 2022-01-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多