gpt4 book ai didi

javascript - 仅触发 jQuery 中最内层元素的点击事件

转载 作者:行者123 更新时间:2023-11-30 10:35:07 25 4
gpt4 key购买 nike

我试图在 HTML 树中最内层的元素上触发点击事件,但由于点击甚至绑定(bind)到其父容器,所以两个事件都被触发,这不是我需要的。我之前用 stopPropagation() 解决了这个问题,但我今天似乎无法让它工作。

jQuery('#parent li').click(function() {
jQuery(this).children('.contained').slideDown();
});
jQuery('.contained').click(function() {
Query(this).slideUp();
});

假设这是我们的 HTML:

<ul id="parent">
<li>
click to show more
<p class="contained">click to hide</p>
</li>
</ul>

我相信这不会生效,因为它在 li 中包含一个 p,但为了简单起见,让我们暂时忽略它。如何在没有父点击的情况下让内部元素 slideUp() 甚至在之后立即触发它到 slideDown()?

最佳答案

return false 停止冒泡:

jQuery('.contained').click(function() {                 
Query(this).slideUp();
return false;
});

请注意,返回 false 也会阻止事件的默认行为。 Read more here .

或者使用事件对象的stopPropagation函数:

jQuery('.contained').click(function(e) {                 
Query(this).slideUp();
e.stopPropagation();
});

关于javascript - 仅触发 jQuery 中最内层元素的点击事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14448390/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com