2010-05-17 30 views
1

我甚至不好意思问,但有人可以帮我理解“处理程序”是什么。我是新来的jQuery和API不断有类似以下参考资料:不能处理它(需要jQuery hanlder理解)

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

我抓我的头,对自己说“这到底是怎么一个处理程序”。然后我检查我的2本jQuery书籍,并没有真正看到具体的东西。我得到了一个事件处理程序的功能,它处理一个事件。但在上面的上下文中的词处理程序混淆了我包括“eventObject”。我试图谷歌它,但无法真正找到一个真正清楚的定义,究竟是一个处理程序是什么,因为它涉及到jQuery。感谢您的帮助=]

回答

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切换”。

+0

你们让我非常喜欢stackoverflow。 – chainwork 2010-05-17 17:44:29

+0

很高兴帮助! :) – 2010-05-17 18:59:56

1

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

3

处理程序是您编写来处理事件的任何函数。对于例如在

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

的处理程序是

function() { 
    //....... 
} 
+0

谢谢rajasaur,那很快。 – chainwork 2010-05-17 17:41:36