更新:2007 年 11 月
返回一个单独的方法,可调用该方法来顺序调用指定事件的所有处理程序。
var e = new Sys.EventHandlerList();
var a = Sys.EventArgs.Empty;
e.addHandler(id, handler);
var f = e.getHandler(id);
if (f) f(this, a);
参数
- id
指定的事件的 ID。
返回值
一个单独的方法,可调用该方法来顺序调用指定事件的所有处理程序。
备注
调用 getHandler 方法可引发 EventHandlerList 对象中的事件。首先调用 getHandler 方法,将 id 参数设置为要引发的事件的标识符。然后,调用由 getHandler 返回的方法,即可按顺序调用该事件的所有处理程序。
在调用所返回的方法之前,应立即调用 getHandler,以免 Sys.EventHandlerList 对象的内容出现任何更改。
getHandler 方法只引发在 EventHandlerList 实例中声明的事件,并且不包含在其他位置声明的处理程序。
示例
下面的示例演示如何在自定义控件中调用 getHandler 方法。此示例摘自 EventHandlerList 类概述中一个更大的示例。
_clickHandler: function(event) {
var h = this.get_events().getHandler('click');
if (h) h(this, Sys.EventArgs.Empty);
},