Javascript jQuery将函数绑定到父div,而不是子锚点,反之亦然

Javascript jQuery将函数绑定到父div,而不是子锚点,反之亦然,javascript,jquery,Javascript,Jquery,我有一个div,里面有几个锚链接: <div id="myDiv"> +----------------------------+ | | | <a class="myAnc">...</a> | | <a class="myAnc">...</a> | | | +----------------------------+

我有一个div,里面有几个锚链接:

<div id="myDiv">
+----------------------------+
|                            |
|  <a class="myAnc">...</a>  |
|  <a class="myAnc">...</a>  |
|                            |
+----------------------------+

+----------------------------+
|                            |
|  ...  |
|  ...  |
|                            |
+----------------------------+
我想将单击事件绑定到调用
myFunction1()
但具有
.myAnc
标记调用
myFunction2()
#myDiv
。使用jQuery的
bind
,无论单击什么(div或锚定),都会调用
myFunction1
myFunction2

如何确保他们调用两个单独的函数(并且仅调用这些函数)?

myFunction2(ev)
中调用:

ev.stopPropagation();
myFunction2(ev)
中调用:

ev.stopPropagation();
试试这个:

$("a.myAnc").click(function(e) {
   e.stopPropagation(); // prevent DOM event bubbling which will trigger the click of the parent div
});

$("#myDiv").click(function() {
});
试试这个:

$("a.myAnc").click(function(e) {
   e.stopPropagation(); // prevent DOM event bubbling which will trigger the click of the parent div
});

$("#myDiv").click(function() {
});
试一试

工作演示@

尝试


工作演示@

当您单击锚定时,首先
解除绑定上一个事件,然后使用函数2绑定当您单击锚定时,首先
解除绑定上一个事件,然后使用函数2+1绑定,感谢您的解决方案。很高兴知道这叫冒泡。检查另一个答案是否提前一分钟+1感谢您的解决方案。很高兴知道这叫冒泡。检查另一个答案是否提前一分钟