单击指定类(包括其子项)以外的任何位置

时间:2015-12-09 11:15:07

标签: jquery

如果点击.m1wrap孩子,此处会显示提醒,但除.m1wrap及其所有儿童外,我需要显示警告。

<div class="m1wrap">
<div class="m1top"></div>
<div class="m1bottom"></div>
</div>

JS

$(document).on("click", function(e) {
      if (e.target.className !== "m1wrap") {
        alert ("323");
    };
})

1 个答案:

答案 0 :(得分:3)

尝试使用带有选择器".m1wrap, .m1wrap *"的{​​{3}}来选择父.m1wrap.m1wrap的子女

$(document).on("click", function(e) {
      if (!$(e.target).is(".m1wrap, .m1wrap *")) {
        alert ("323");
    };
})
.m1wrap, .m1wrap * {
  border: 2px solid tomato;
  width:100px;
  padding:2px;
}

.m1top {
  position:absolute;
  left:120px;
}

.m1bottom {
  position:absolute;
  left:250px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js">
</script>
<div class="m1wrap">
  m1wrap
<div class="m1top">m1top</div>
<div class="m1bottom">m1bottom</div>
</div>