/* --- name: Element.Event.Pseudos description: Adds the functionality to add pseudo events for Elements license: MIT-style license authors: - Arian Stolwijk requires: [Core/Element.Event, Core/Element.Delegation, Events.Pseudos] provides: [Element.Event.Pseudos, Element.Delegation.Pseudo] ... */ (function(){ var pseudos = {relay: false}, copyFromEvents = ['once', 'throttle', 'pause'], count = copyFromEvents.length; while (count--) pseudos[copyFromEvents[count]] = Events.lookupPseudo(copyFromEvents[count]); DOMEvent.definePseudo = function(key, listener){ pseudos[key] = listener; return this; }; var proto = Element.prototype; [Element, Window, Document].invoke('implement', Events.Pseudos(pseudos, proto.addEvent, proto.removeEvent)); })();