1

我什至不好意思问但有人可以帮我理解什么是“处理程序”。我是 jQuery 新手,API 经常有类似以下的引用:

toggle( handler(eventObject), handler(eventObject), [ handler(eventObject) ] )

我挠挠头,对自己说“什么是处理程序”。然后我检查了我的 2 本书,并没有真正看到任何具体的内容。我了解事件处理程序的作用,它处理事件。但是上述上下文中的单词处理程序使我感到困惑,包括“eventObject”。我试图用谷歌搜索它,但找不到真正明确的定义,因为它与 jquery 相关的处理程序到底是什么。谢谢你的帮助=]

4

3 回答 3

3

处理程序是您为处理事件而编写的任何函数。例如在

$(document).ready(function() {
      //......
});

处理程序是

function() {
     //.......
}
于 2010-05-17T17:24:21.547 回答
2

将处理程序视为正在调用的任何操作的回调。在这种情况下handler(eventObject),意味着具有该参数的方法可以接受传递给它的函数,并且该函数将在接收它的方法执行之前、期间或之后的某个特定时间点被调用(如参数规范),它将传递一个名为 eventObject 的值,该值可以是任何值,但很可能是为您发出回调的给定事件的目标。

这是一个例子:

function MyCallback(eventObject) {
    alert(jQuery(eventObject).attr('id') + ' toggled'));
}

jQuery("#myBtn").click(function() {
    jQuery("#myObj").toggle("fast", function(eventObject) { MyCallback(eventObject); });
});

使用上面的代码,当#myBtn被单击时,元素#myObj将被切换(快速),一旦切换动画完成MyCallback,将被调用并传递#myObj,这将导致出现一个警报,说“myObj toggled”。

于 2010-05-17T17:25:05.810 回答
1

这是处理事件的函数。为了扩展,在切换的情况下,ON 调用第一个函数(使用 eventObject),OFF 调用第二个函数。eventObject 将根据事件保存不同的信息,例如鼠标坐标。

于 2010-05-17T17:20:07.370 回答