Javascript boolean if语句不起作用

时间:2013-02-28 11:15:20

标签: javascript jquery

我正在尝试动画一个面板来从页面顶部进出。不幸的是我的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声明。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

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

试试这个:

var panelShown = false;
$(document).ready(function(){
    $('#nav_arrow').click(function(){  
        $('#nav_panel').animate({top: (panelShown ?'-200px' : '0px')}, 1000, function(){});
        panelShown = !panelShown;
    });
});