如何绑定点击侦听器而不是javascript中的元素

时间:2014-03-21 02:05:25

标签: javascript jquery javascript-events

我想弹出一个菜单,当用户点击菜单以外的位置时,菜单会隐藏。 此外,如果点击位于某些具有点击侦听器的节​​点上,则不会触发这些处理功能。 我可以使用透明遮罩层来实现这一点,但有没有更简单的方法(因为我使用jQuery)? 我试过了:不是选择器

$(document).on('click',':not(.menu)',function(e){
$('.menu').hide();
});

但它似乎不起作用(我也应该在这里添加一个e.stopPropgation())?

1 个答案:

答案 0 :(得分:2)

我会写这样的东西:

$(document).on('click', function(e){
  if($(e.target).parents(".menu").length == 0)
     $('.menu').hide();
});