0

我已经构建了一个模态框,它使用覆盖所有 div 背景来淡出内容并允许用户单击框以关闭它。我通过捕获所有点击来做到这一点,但过滤掉模型框上的任何点击。

  $('body').on('click', '.cover_slide > *',function(e){
    e.stopPropagation();
  });
  $('body').on('click', '.cover_slide',function(){
    helper.cover.close();
    $('body').off('click', '.cover_slide');
  });

我希望能够通过点击与我的模态框上的某些元素进行交互,但我似乎无法弄清楚如何做到这一点并且仍然具有我的“点击关闭”功能。目前该框上的所有点击都被忽略。

4

1 回答 1

1

无需多次绑定点击。尝试使用此代码段。请注意,您可能必须根据元素的实际情况更改最近的选择器

$(document).bind("click", function(e) {
    if($(e.target).closest("div").hasClass('coverSlide')) {
        //do stuff if someone clicks the box
    }
});
于 2012-11-14T10:03:48.267 回答