KISSY.Event 提供添加、删除监听函数的事件操作方法。你可以用它来操作 DOM 对象的事件，也可以用来操作自定义 EventTarget 对象的事件。与事件相关的功能，只要你能想到，它基本上都能做到。赶快了解它吧，从这里开始。

### Methods

#### add `void add ( target, type, fn, scope )` `void on ( target, type, fn, scope )`

给目标对象指定类型的事件添加监听函数。

on 是 add 的别名。

Parameters:
  `target` `<EventTarget>` 事件目标对象。可以是选择器或数组。
  `type` `<String>` 事件类型。可以是空格分隔的多个类型。
  `fn` `<Function>` 监听函数。执行时，接收 1 个参数：事件对象 ev.
  `scope` `<Object>` 监听函数的 this Object. 默认指向 target.

    var S = KISSY, Event = S.Event;

    // 最常规的用法
    Event.add(document, 'click', function(ev) {
        // handle code
    });

    // 支持选择器
    Event.add('.class', 'click', function(ev) {
        // handle code
    });

    // 支持多类型
    Event.add('#id', 'mouseenter mouseleave', function(ev) {
        // handle code
    });

不要怀疑，就这么简单。因为本来就应该如此简单！

#### remove `void remove ( target, type, fn )`

从目标对象中移除监听函数。

参数和 add 一致，无需多说。直接看代码：

    var S = KISSY, Event = S.Event;

    // 最常规的用法
    Event.remove(el, 'click', fnName);

    // 支持选择器
    Event.remove('.class', 'click', fnName);

    // 支持多类型
    Event.remove('#id', 'focus mouseover', fnName);

    // 支持移除特定事件类型下所有监听函数
    Event.remove(el, 'click');

    // 支持移除特定元素下的所有事件类型的所有监听函数
    Event.remove(el);

在 ie 下，当页面关闭时，KISSY 会自动移除掉通过 KISSY 注册的所有事件。这能有效避免 ie 下由事件注册导致的内存泄漏。

囧，这么简单，也敢号称“只要你能想到，它基本上就能做到”？请稍安毋躁，精彩才刚上映。

继续阅读 event-object

home › event › event :