0

我正在尝试为面板设置动画以从页面顶部进出。不幸的是,我的 if 语句不起作用。这是我的代码:

var panelShown = false;
$(document).ready(function(){
    $('#nav_arrow').click(function(){
        panelShown = true;
        $('#nav_panel').animate({top: '0px'}, 1000, function(){});
        $('#nav_bar');
    });
    if(panelShown == true){//originally written as if(panelShown){
        $(document).click(function(){
            panelShown = false;
            $('#nav_panel').animate({top: '-200px'}, 1000, function(){});
        });
    }
});

第一部分工作正常,面板动画下来。但我永远无法进入 if 语句。任何帮助将不胜感激。

4

1 回答 1

1

它真的永远不会被调用,因为ready它会被调用false

尝试这个:

var panelShown = false;
$(document).ready(function(){
    $('#nav_arrow').click(function(){  
        $('#nav_panel').animate({top: (panelShown ?'-200px' : '0px')}, 1000, function(){});
        panelShown = !panelShown;
    });
});
于 2013-02-28T11:19:45.933 回答