更新:2007 年 11 月
从 EventHandlerList 实例的事件中移除事件处理程序。
var e = new EventHandlerList();
e.addHandler(id, handler);
e.removeHandler(id, handler);
参数
id
事件的 ID。handler
要从事件中移除的处理程序。
备注
使用 removeHandler 方法可以从 EventHandlerList 对象定义的事件中移除事件处理程序。如果在调用 removeHandler 时事件只有一个处理程序,则该事件将在 EventHandlerList 实例中作为占位符继续存在。
addHandler 和 removeHandler 方法还可以用于在脚本组件中在运行时动态更改事件。例如,在处理程序执行期间,可以将其从列表中移除,以使它只在事件第一次引发时运行。
示例
下面的示例演示如何在自定义控件中调用 addHandler 和 removeHandler 方法。此示例摘自 EventHandlerList 类概述中一个更大的示例。
// Bind and unbind to click event.
add_click: function(handler) {
this.get_events().addHandler('click', handler);
},
remove_click: function(handler) {
this.get_events().removeHandler('click', handler);
},