jQuery-按键/KeyCode和回车键单击按钮功能

jQuery-按键/KeyCode和回车键单击按钮功能,jquery,html,Jquery,Html,我现在正在学习jQuery,并且已经成功地使用下面的函数将键盘上的“回车”键连接到按钮上。虽然我不明白为什么我需要在函数参数中或if语句的开头添加任何内容 例如,为什么这样做有效: $('#enter').keypress(function(event) { if(event.keyCode == 13) { $('button').click(); }; }); 但这并不是: $('#enter').keypress(funct

我现在正在学习jQuery,并且已经成功地使用下面的函数将键盘上的“回车”键连接到按钮上。虽然我不明白为什么我需要在函数参数中或if语句的开头添加任何内容

例如,为什么这样做有效:

$('#enter').keypress(function(event) {
        if(event.keyCode == 13) {
            $('button').click();
        };
    });
但这并不是:

$('#enter').keypress(function() {
        if(keyCode == 13) {
            $('button').click();
        };
    });
以下是HTML:

<input id="enter" placeholder="Enter text"></input>
<button>Get Info</button>

显示简介

我正在努力理解这里“event”的意义。

在第一个示例中,您正在向函数传递。触发事件时,
keyCode
是关联的
event
对象上的属性。如果不传递
事件
对象,则无法访问
keyCode
属性,这就是第二个示例不起作用的原因


作为旁注,
input
元素没有结束标记

更改:

<input id="enter" placeholder="Enter text"></input>

致:



谢谢,我想让我困惑的是,我可以用任何东西代替“事件”,它仍然有效,例如,我可以将两个出现的“事件”改为“苹果”,它仍然有效。另外,感谢您对HTML:)@Wub的介绍,这是因为您可以随意命名参数(因为您正在传递它)。它可以作为
e
事件
等传递。。它仍然是相同的
event
对象,因为这是触发事件时传递给函数的第一个参数。另外,关于你关于HTML的观点,由于我使用的是HTML5,这是否应该不带尾随斜杠来编写?@Wub由你决定。它在“void”元素(例如
input
/
img
元素)上完全有效,并且它将带有或不带有尾部斜杠。这只是个人喜好。有时你会看到斜杠被省略了。
<input id="enter" placeholder="Enter text" />