javascript - jQuery 如何使点击处理程序始终引用父级?

标签 javascript jquery html click

假设我有一个简单的父节点和子节点,如下所示:

<div id="parent">
    <span id="child">Test</span>
<div>

我有一个像这样的 jQuery 点击处理程序:

$('#parent').click(function (e) {
   alert(e.target.id);
});

如果我点击文本范围,我会收到警报“child”。如果我在跨度之外但在父 div 内单击,我会收到警报“parent”。

如果我希望行为更改为:如果我单击父 div 内的任意位置,无论它是否在文本范围内,我希望 e.target 被引用到父级,并且从而获得“ parent ”的警报?

最佳答案

您可以使用 this 关键字 (this.id) 或读取 eventcurrentTarget 属性> 对象,即。 e.currentTarget.id

关于javascript - jQuery 如何使点击处理程序始终引用父级?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25224281/

相关文章:

javascript - 将鼠标悬停在列表上时更改下拉列表颜色

javascript - 使用需要连接的名称字符串来 react ref 属性访问

javascript - 如何通过dockerfile在ENTRYPOINT之前执行shell命令

javascript - meteor.js 模板助手作为变量与键+值

html - yii2 事件形式中的 Bootstrap 3 复选框 css 样式

javascript - 有没有办法判断您是否从 Service Worker 获取缓存数据?

javascript - jquery 在同一页面中切换登录和注册

javascript - 删除 jsonObject 替换为 undefined

JavaScript jQuery 延迟输入

javascript - 用 jquery 添加一个 div 似乎不起作用