JQuery - 也会触发点击更改

Jam*_*son 1 javascript jquery

我有一个基本的JQuery脚本,当你点击 - 从而显示它们 - 通过切换时,它会改变几个div.

<script type="text/javascript">
     $('#content_display').click(function() {
         $(this).toggleClass('selected');
         $('#content_display_selector_container').toggle();
     });
</script>
Run Code Online (Sandbox Code Playgroud)

但是 - 要调用偶数,您只需要点击ID为"content_display"的第一个主div.

我的问题是:如果用户也点击了BODY,我怎么能用JQuery隐藏这些变化 - 即如果你点击了,div会回到原来的隐藏状态?

感谢您帮助JQuery clutz!

Ric*_*ton 5

这样的事情应该有效:

$('body').click(function(e) {
    if (!$(e.target).is('#content_display')) {
        $('#content_display').removeClass('selected');
        $('content_display_selector_container').hide();
    }
});
Run Code Online (Sandbox Code Playgroud)

  • 或者在另一个单击处理程序中使用`e.stopPropagation()`.根据整个页面,动态添加和删除单击处理程序可能更好. (3认同)