0

我正在尝试将单击功能绑定到 HTML 元素。所以我尝试了这个:-

$("#buttonId").click(alert("hey")); // does not work.

然后我尝试了这个:-

$("#buttonId").click(function() {
    alert("hey");
}); // works perfectly fine.

既然alert也是一个函数,为什么我不能直接通过呢。有人可以对此有所了解吗?

单击方法文档可在此处获得http://api.jquery.com/click/

4

2 回答 2

5

在第二个示例中,您将一个函数传递给该click()方法,但没有调用它。当有人点击该元素时,jQuery 将为调用该函数。

然而,在第一个示例中,您正在调用“ alert("hey")”(返回undefined),并且值被传递给click方法。

于 2012-07-18T09:35:56.807 回答
1

click方法采用处理程序类型的参数,而alert("hey");函数调用既不是处理程序也不返回处理程序,即此调用无效。

于 2012-07-18T09:37:19.133 回答