jQuery click() event catch-all?

前端 未结 2 1404
感动是毒
感动是毒 2020-12-18 23:26

we\'re showing a box on the screen that I want to hide when the user clicks anywhere on the screen, including body, anchors, divs, buttons, etc... Is there a selector that c

相关标签:
2条回答
  • 2020-12-18 23:46

    You can just bind to the click event of document element. Try it at http://jsfiddle.net/ZqEbY/.

    0 讨论(0)
  • 2020-12-19 00:08

    You can do it like this:

    $(document).click(function() {
      $("#boxID").hide();
    });
    

    Since the click events will, by default, bubble up to document, this is a "catch all" approach...if you don't want clicks from inside the box to close it, add a .stopPropagation() call on those click events like this:

    $("#boxID").click(function(e) {
      e.stopPropagation();
    });
    
    0 讨论(0)
提交回复
热议问题