Javascript 用cookies保持jQuery菜单打开

Javascript 用cookies保持jQuery菜单打开,javascript,jquery,html,css,cookies,Javascript,Jquery,Html,Css,Cookies,我一直在玩我在这个网站上找到的一些jQuery cookie,我认为cookie是有效的,但我的菜单完全停止打开 我对jQuery非常陌生,所以不确定哪里会出错 我只是继续打开链接,例如单击链接1,然后单击子菜单项,当页面加载时,链接1仍然打开 有人请给我指出正确的方向 多谢各位 这里有一个更混乱的答案: jQuery(function ($) { // jQuery code in here can safely use $ $('.nav li') .css

我一直在玩我在这个网站上找到的一些jQuery cookie,我认为cookie是有效的,但我的菜单完全停止打开

我对jQuery非常陌生,所以不确定哪里会出错

我只是继续打开链接,例如单击链接1,然后单击子菜单项,当页面加载时,链接1仍然打开

有人请给我指出正确的方向

多谢各位


这里有一个更混乱的答案:

jQuery(function ($) {
    // jQuery code in here can safely use $
    $('.nav li')
        .css({
            cursor: "pointer"
        });

    $(".drop")
        .on('click', function () {
            $(this).toggleClass('open');
            $(this).find('ul').toggle();
            $.cookie('open_items', 'the_value');
            openItems = new Array();
            $("li.drop").each(function(index, item) {
                if ($(item).hasClass('open')) {
                    openItems.push(index);
                }
            });
            $.cookie('open_items', openItems.join(','));
        });

    if( $.cookie('open_items') && $.cookie('open_items').length > 0 ) {
        previouslyOpenItems = $.cookie('open_items');
        openItemIndexes = previouslyOpenItems.split(',');
        $(openItemIndexes).each(function(index, item) {
            $("li.drop").eq(item).addClass('open').find('ul').toggle();
        });
    }
});
您需要为此包含库


更新的fiddle可以在这里找到:

非常感谢,在我为jquery库服务之后,它起到了很大的作用。你能不能解释一下发生了什么事,让我从中吸取教训?还有没有办法将其设置为一小时后过期?再次感谢你一直在玩弄它,当你真的点击一个菜单项时,它会关闭菜单吗?希望在单击某个项目后保持打开状态。但除此之外,它工作得很好!
jQuery(function ($) {
// jQuery code in here can safely use $
$('.nav li')
.css({
cursor: "pointer"
})
$(".drop")
    .on('click', function () {
    $(this).find('ul').toggle();
})

});
jQuery(function ($) {
    // jQuery code in here can safely use $
    $('.nav li')
        .css({
            cursor: "pointer"
        });

    $(".drop")
        .on('click', function () {
            $(this).toggleClass('open');
            $(this).find('ul').toggle();
            $.cookie('open_items', 'the_value');
            openItems = new Array();
            $("li.drop").each(function(index, item) {
                if ($(item).hasClass('open')) {
                    openItems.push(index);
                }
            });
            $.cookie('open_items', openItems.join(','));
        });

    if( $.cookie('open_items') && $.cookie('open_items').length > 0 ) {
        previouslyOpenItems = $.cookie('open_items');
        openItemIndexes = previouslyOpenItems.split(',');
        $(openItemIndexes).each(function(index, item) {
            $("li.drop").eq(item).addClass('open').find('ul').toggle();
        });
    }
});