单击内容时滑动

时间:2014-04-27 12:44:28

标签: jquery jquery-mobile slidetoggle slidedown slideup

我有这段代码:

$("a.shownav").on("click", function(){
    $("div.nav").slideToggle();
});

当我点击页面的其他部分时,div.nav部分除外,我想要div.nav部分进行滑动。我试过这个但是它似乎不起作用:

if ($("div.nav").is(":visible")){
    $("*").not("div.nav").on("click", function(){
        $("div.nav").slideUp();
    });
}

我如何实现我的目标?

1 个答案:

答案 0 :(得分:1)

您可以处理文档的click事件,获取目标对象,然后测试它是nav div还是nav div的子节点。如果它不是2中的一个,你可以关闭它。

$(document).on("click", function(e){
    var targ = $(e.target);
     if (!targ.hasClass("nav") && targ.parents(".nav").length < 1) {
        $("div.nav").slideUp();
    }
});
  

<强> DEMO