javascript - 为什么 jQuery 将 'Enter' Keypress 事件视为 Click 事件

标签 javascript jquery

考虑以下代码:

$(document.body).click(function(e) {
console.log(e.clientX);
});

只要我点击一下,这个事件就会触发。但我的应用程序中有一个搜索栏。每当我在搜索栏中输入内容并按 Enter 时,它都会调用单击事件。这是 jQuery 中的错误还是我缺少任何 JS 概念。

要重现此问题,请访问 www.ebay.in,然后在 FF 中打开 firebug,然后在控制台中运行上述脚本。

  1. 然后单击您应获取 X 坐标的任意位置。
  2. 将光标置于搜索栏中,然后按 Enter 键,并在搜索栏中显示“坚持” 安慰。你会看到0

任何澄清都会非常有帮助。

最佳答案

在输入字段内按 Enter 会模拟单击表单上的第一个可提交按钮。这是标准且期望的行为,但是当盲目接受点击事件时,可能会产生意外的点击。

关于javascript - 为什么 jQuery 将 'Enter' Keypress 事件视为 Click 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23655342/

相关文章:

javascript - Facebook API : How to authenticate a web app

javascript - Nanoscroller 显示无法读取未定义的属性 'style' 为什么?

javascript - 将事件监听器附加到 dom 片段

jquery - 试图在 galleria jquery 中居中图像

javascript - 将表格固定在可查看页面的底部但在该表格内滚动?

javascript - Expo.Fingerprint.isEnrolledAsync 返回一个对象

javascript - 如何使用 Javascript 检测浏览器窗口何时横向滚动

javascript - 避免在 ajax 回调函数中使用 setTimeout

javascript - Circliful jquery 插件基于滚动的动画问题

javascript - 未知提供商 : $mdThemingProvider