Javascript jQuery将函数绑定到父div,而不是子锚点,反之亦然
我有一个div,里面有几个锚链接:Javascript jQuery将函数绑定到父div,而不是子锚点,反之亦然,javascript,jquery,Javascript,Jquery,我有一个div,里面有几个锚链接: <div id="myDiv"> +----------------------------+ | | | <a class="myAnc">...</a> | | <a class="myAnc">...</a> | | | +----------------------------+
<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感谢您的解决方案。很高兴知道这叫冒泡。检查另一个答案是否提前一分钟