通过将var传递给函数来隐藏Div

时间:2014-05-20 12:13:57

标签: javascript jquery

我有一个导航菜单,根据用户点击的项目,我想向他们展示一个div,现在我的问题是,当他们点击一个新菜单时,当前div需要再次隐藏,但我无法看到如何通过var传递?

$(document).ready(function () {
    $('.submenu > li > a').click(function () {
        $('#' + lastClicked).hide(); // hides previous div
        var menu = $(this).prop('id') + "_view";
        $('#news').hide();
        $('#' + menu).toggleClass("hidden");
        var lastClicked = menu;
    });
});

我意识到这是因为我没有通过lastClicked,但我该怎么办呢?

当使用toggleClass时,我发现只有传入属性id是通过做'#'+菜单,这是正确的吗?

1 个答案:

答案 0 :(得分:1)

在更全局的范围内定义lastClicked ...

$(document).ready(function(){        
    var lastClicked = ''; 

    $('.submenu > li > a').click(function(){
        $('#'+lastClicked).hide(); // hides previous div
        var menu = $(this).prop('id') +"_view";

        $('#news').hide();
        $('#'+menu).toggleClass("hidden");
        lastClicked = menu;
    });
});