javascript 中的事件与事件处理程序

event vs eventhandler in javascript

老师说javascript中的onclick是事件,是事件处理器。 但我无法同意她的看法,我发现它们不同但无法区分 properly.Have 进行了大量 google 搜索,找不到任何相关内容。 所以有人请区分事件和事件处理程序。

事件表示某事有 happened.Event 处理程序是当该事件发生时,该做什么,即该特定事件发生时要做的事情列表。

什么是onclick事件? 当用户单击按钮或任何元素时,如果注册了 onclick 属性,则会自动注册一个事件,并且您在该事件发生时指定的函数(事件处理程序)将被调用,并传递事件对象(可选)。

考虑到 javascript 中的事件,这只是您需要处理的不同事物的术语。

点击事件名称。

当它发生时,您将获得一个 onclick 事件对象。

您编写的处理事件的函数是一个事件处理器。

因此,当事件发生时,一个事件对象将传递给您的事件处理程序。

根据 https://developer.mozilla.org 的文档。

事件:

发送事件以通知代码已发生的事情。每个事件都由一个基于 Event 接口的对象表示,并且可能有额外的自定义字段 and/or 函数,用于获取有关发生的事情的额外信息。事件可以代表从基本用户交互到网页中发生的事情的自动通知的一切。

事件处理程序:

在事件触发时执行某些操作的函数或代码行称为事件处理程序。

例如:

click 是单击某项时触发的事件。

onclick 是一个事件处理程序,在单击事件发生时执行某些操作。

<button onClick="alert('You clicked me');">Click me to fire a click event</button>

在上面的示例中,当按钮上发生点击事件时,事件处理程序 (onClick) 会执行一项工作,即发出警报并显示一条消息。

事件处理程序也可以附加到某些事件,如下例所示:

document.getElementById('sampleParagraph').addEventListener("click", function(){
  //I am the event handler Function
  alert("A click event occured on the paragraph");
});
<p id="sampleParagraph">
Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum
</p>

在上面的示例中,我们将事件处理程序附加到段落,在点击事件时向您显示警报。

事件是您的元素可能发生的事情,事件处理程序是一种定义您希望如何对该事件做出反应的方式。例如,onclick 将是您单击按钮时发生的事件,现在您可以定义一个函数,该函数在该事件发生时被调用,这将是您的事件处理程序。 参考:https://www.w3schools.com/js/js_events.asp

“事件”是发生在 HTML 元素上的动作,例如单击、鼠标悬停、按下键等。它与浏览器有关。 另一方面,JavaScript中编写了“事件处理程序”来处理由浏览器引起的操作,如验证用户输入等Link