jquery $(document) 和 $('body')的区别

<ul class="dropdown-menu animated fadeInRight b">


<li><a class="text-center" href="">返回到旧版</a></li>

</ul>


$(function(){


    $('.a').click(function(event){

        $('.b').toggle();

    });

    此为第一部分.......

    $(document).click(function(){

            $(".b").hide();

        });

    此为第二部分.......

    $('body').click(function(){

            $(".b").hide();

        });

});

我想实现的效果是 点击 $('.show-message')之外的dom的时候 $('.b')隐藏,

点击$('.show-message')的时候$('.b')则toggle()

代码如上 为什么我执行第一部分代码的时候一切正常,执行第二部分代码的时候 $('.b')一直出不来 好像冒泡到$('show-message')上面了,


大话西游666
浏览 2270回答 2
2回答

慕哥9229398

你两个都是hide

皈依舞

$('.a')的点击事件冒泡了,用stopPropagation()阻止一下就可以了。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript