1

我正在尝试在 Facebook 上制作侧边栏。好吧,不完全是。我只想在重新加载或转到不同页面后记住 jQuery 的状态。我不明白如何使用 cookie 插件。我在哪里把它放在这个脚本上?它是怎么写的?我下载了插件,它在 html 文件中,但我不知道如何通过 jQuery 执行它。

$(document).ready(function(){
    $("#arrow").bind('click', function(){
        $('#wrappernav').fadeOut("fast");
        $('#sidebar').fadeOut("fast");
        $('#wrappernavbg').fadeOut("fast");
        $('#naviclosed').fadeIn("fast");
        $(window).unbind('resize');
     //I want jQuery to remember this state after refresh.

    });
    $('#naviclosed').bind('click', function () {
        $('#wrappernav').fadeIn("fast");
        $('#sidebar').fadeIn("fast");
        $('#wrappernavbg').fadeIn("fast");
        $('#naviclosed').fadeOut("fast");
        $(window).bind('resize', ScreenSize);
    });
});
4

1 回答 1

1

对您的代码稍作修改:

<script>
function clickArrow()
{
    $('#wrappernav').fadeOut("fast");
    $('#sidebar').fadeOut("fast");
    $('#wrappernavbg').fadeOut("fast");
    $('#naviclosed').fadeIn("fast");
    $(window).unbind('resize');
}

$(document).ready(function(){

    //Do the animations automatically IF the cookie value was SET.
    var arrowClicked = parseInt($.cookies.get('arrowClicked')); 
    if (arrowClicked > 0) {
        clickArrow(); 
    }

    $("#arrow").bind('click', function(){

     //Perform actions
     clickArrow();

     //I want jQuery to remember this state after refresh.
     $.cookies.set('arrowClicked', 1);
    });

    $('#naviclosed').bind('click', function () {
        $('#wrappernav').fadeIn("fast");
        $('#sidebar').fadeIn("fast");
        $('#wrappernavbg').fadeIn("fast");
        $('#naviclosed').fadeOut("fast");
        $(window).bind('resize', ScreenSize);
    });
});

有关 Cookie 插件的更多详细信息,请访问此链接:http ://code.google.com/p/cookies/

也请仅在 jquery.js 之后包含 jquery.cookie.js

于 2013-01-14T09:55:42.650 回答