gpt4 book ai didi

javascript - 如何始终在父元素上捕获 jQuery 事件

转载 作者:行者123 更新时间:2023-11-28 19:43:56 25 4
gpt4 key购买 nike

HTML:

<div class="parent">
<div class="child"></div>
</div>

jQuery:

$(".parent").on('click', callback);

问题是,根据样式(特别是鼠标指针单击的位置),单击事件会在 .child.parent 上触发,具体取决于鼠标。

是否有办法始终从 .parent 获取事件,即使在 .child 上单击该事件?我过去解决这个问题的方法是检查 $(event.target) 的 id 或类,如果它不是 .parent 那么我会做 $(event.target).parent() 但我需要一个适用于多种场景的解决方案,而不是修复。

最佳答案

使用event.currentTarget而不是event.targetevent.currentTarget 属性是事件冒泡阶段中的当前 DOM 元素,通常等于 this

event.currentTarget - 事件冒泡阶段中的当前 DOM 元素。

event.target - 发起事件的 DOM 元素。

$(".parent").on('click', callback);

function callback(event){

alert( event.currentTarget === this );
}

fiddle for event.currentTarget - FIDDLE

fiddle for event.target - FIDDLE2

关于javascript - 如何始终在父元素上捕获 jQuery 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24628211/

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