javascript - jQuery:事件附加到按钮,但在 Chrome 中按钮内的图像元素上触发

标签 javascript jquery

我的表单中有这样的按钮:

<button class="delete-file-btn" "><img src="/img/del.png"/></button>

然后我通过 jQuery 附加事件:

$('#Form').on('click', 'button.delete-file-btn', function(e) {
    // Some code here
});

当我在 Crome 中按下按钮时,e.target 指向 img 元素,而不是按钮。事件分配有什么问题?在 FF 中一切正常。

最佳答案

e.target 指的是您点击的最具体的元素,即您定位的元素。该事件被触发是因为您的目标是您附加了 click 的元素的子元素。使用 this 引用您附加事件处理程序的元素。

当我尝试你的示例时,我确实得到了 e.target 图像,也在 Firefox 中。

希望这对你有帮助!

关于javascript - jQuery:事件附加到按钮,但在 Chrome 中按钮内的图像元素上触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26538068/

相关文章:

javascript - 如何在使用 Angular 在文本区域中键入时将每个单词的首字母大写

javascript - 如何使用鼠标单击选择多个元素?

javascript - 有没有办法将附件添加到用 JavaScript 或其他免费 API 创建的 eml 文件?

jquery - 如何通过ajax调用获取JSON数据

javascript - ExtJS 4 将函数附加到动态创建的弹出窗口

jquery - 如何以编程方式在鼠标悬停链接上滑动图像

php - 如何在 PHP 中创建 websockets 服务器

javascript - 随机背景颜色,每次刷新都会改变

javascript - 我可以在运行时将一个 JavaScript 文件包含在另一个文件中吗?

javascript - 有没有办法在字符串化后替换 JSON 对象中的文本?