如何通过点击外部来关闭div

时间:2016-08-25 15:20:36

标签: javascript jquery html

我搜索了我的一个网站,当我按下我的div时,它会显示所有类别。单击某个类别时,div将自行关闭。我的问题是,如果客户点击我的div并且不想点击任何类别,我希望只要该客户点击它之外的任何地方就关闭该div。

这是我的HTML:

<div id="wrap-categories">
  <p>Choose a category</p>
  <img src="..." alt="white-arrow">
  <ul class="" style="display: none;">

    <li data-value="1">Category 1</li>
    <li data-value="2">Category 2</li>
    <li data-value="3">Category 3</li>

  </ul>
</div>

这是我的Javascript,每当我尝试点击div外部以关闭它时,它无法正常工作:

$('#wrap-categories > p').click(function() {
   $('#wrap-categories > ul').addClass('opened').show();
});

if($('#wrap-categories > ul').hasClass('opened')) {
   $(document).click(function(e) {
     console.log(1);
     // close div here
   });
}

它的作用是即使我点击div#wrap-categories,它已经在console.log中放了1。但是我真的需要关闭它,只有当用户在打开div时克服它之外,并且还有类#&#34;打开&#34;。

1 个答案:

答案 0 :(得分:0)

你的意思是?

 (\d{3})\,.*(\d{3})\,.*(\d{3})

jsfiddle