事件绑定意味着什么?

Rei*_*Rei 15 javascript jquery events binding closures

事件绑定意味着什么?每当我在互联网上搜索时,我总是会遇到这个词,无论我试图寻找什么意思,它对我来说仍然含糊不清@ _ @前一段时间,在阅读一些关于JavaScript的博客时我看到人们使用这个神圣的词我不能把握.

Xio*_*ion 18

事件绑定是指告诉浏览器每当发生某个"事件"时应调用特定函数.事件主要与用户输入相关,例如点击.

在jQuery中绑定到事件的示例可以如下:

$("#elem").bind("click", function() {
    alert("Clicked!");
});
Run Code Online (Sandbox Code Playgroud)

这将函数绑定到click具有标识符的DOM对象的事件elem.当用户单击它时,将显示警报(消息框).绑定是通过调用jQuery bind函数完成的,但还有其他方法可以做到这一点(例如click,绑定到click事件时的jQuery 函数).


Tak*_*Tak 13

将事物绑定到事件时,将在触发事件时触发事件.这就像把雾角粘在你车上的刹车踏板上.


Jam*_*man 5

当您在网页上执行操作时,它将触发一个事件。这可能类似于:

  • 单击一个按钮
  • 从下拉列表中选择一个值
  • 将鼠标悬停在项目上

这些事件可以在您的 JavaScript 代码中捕获。

捕获事件的一种常见(并且经常被误导)的方法是在 HTML 元素本身上执行此操作(如onclick下面的属性所示)

<input id="MyButton" type="button" value="clickme" onclick="Somefunction()" />
Run Code Online (Sandbox Code Playgroud)

因此,当用户单击按钮时,该SomeFunction功能将被执行。

但是,采用称为“后期绑定”的技术被认为是更好的方法。这可确保您的 HTML 和 JavaScript 完全分开。

所以,我们可以像这样修改上面的例子:

document.getElementById("MyButton").onclick = function(){
   //functionality here.
}
Run Code Online (Sandbox Code Playgroud)

jQuery 使这更容易:

$("#MyButton").click(function(){
    //functionality here.
});
Run Code Online (Sandbox Code Playgroud)