Javascript - программно вызывать события

Скажем, я добавляю события к объекту, используя addEventListener или attachEvent (в зависимости от браузера); возможно ли позднее вызвать эти события программно?

Обработчики событий добавляются / удаляются с помощью такого объекта:

var Event = {
    add: function(obj,type,fn) {
        if (obj.attachEvent) {
            obj.attachEvent('on'+type,fn);
        } else {
            obj.addEventListener(type,fn,false);
        }
    },
    remove: function(obj,type,fn) {
        if (obj.detachEvent) {
            obj.detachEvent('on'+type,fn);
        } else {
            obj.removeEventListener(type,fn,false);
        }
    }
}

Или мне нужно хранить копии каждого обработчика и просто добавить функцию Event.invoke (...)?

Редактировать: Кроме того, JQuery не вариант: D

Ответы на вопрос(2)

Ваш ответ на вопрос