jQuery在用户点击DIV时隐藏DIV,但不是在一个div

时间:2016-07-25 13:47:02

标签: javascript jquery

我想在用户点击它之外隐藏div而不是一个特定的div

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

    $('.css_content').toggle();
    $('.todo_before').toggle();
    $('.todo_after').toggle();
  });

  $(document).mouseup(function (e) {
    var container = new Array();
    container.push($('.css_content'));
    container.push($('.todo_before'));
    container.push($('.todo_after'));

    $.each(container, function(key, value) {
      if (!$(value).is(e.target) // if the target of the click isn't the container...
          && $(value).has(e.target).length === 0) // ... nor a descendant of the container
      {
        $(value).hide();
      }
    });
  });

但不要点击一个container.push($(' .css_content'));

1 个答案:

答案 0 :(得分:0)

希望hasclass会很有用。它返回一个布尔值

if (!$(e.target).hasClass('css_content')){
        $(value).hide();
      }

您也可以使用id选择器

    if(e.target.id !=="someIdOfContainer){
       $(value).hide();
}