【发布时间】:2017-01-04 12:08:51
【问题描述】:
我有一个包含多个类名的元素,我不能为这个元素使用 ID。我想在单击元素或单击其他任何内容时触发单独的事件。现在,当我单击元素时,由于多个类名而触发了单击其他任何内容的事件。我该如何解决这个问题?我打算使用 JQuery。
<!DOCTYPE html>
<html lang="en-US">
<head>
<title></title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
</head>
<body>
<h1></h1>
<div class="stack a b c">
1
</div>
<div class="stack a b c">
2
</div>
<script src="js/jquery-1.9.1.js"></script>
<script>
$('.a').click(function() {
console.log("stack clicked");
});
$("html:not(.stack, .a, .b, .c)").click(function() {
console.log("other clicked");
});
</script>
<style>
.stack{
width:100px;
height:100px;
background-color:red;
border:1px solid black;
}
</style>
</body>
</html>
【问题讨论】:
-
你想达到什么目的?
-
您在寻找
$("html:not(.stack.a.b.c)")吗? -
event.stopPropagation()
-
@Naila 我的最终目标是在单击按钮时出现下拉菜单,并在单击其他任何位置时使其消失
标签: javascript jquery html css