Javascript dispatchEvent
Hey... je suis à l'aide de Flash beaucoup et mes cours utilise la classe EventDispatcher qui m'autorises à définir des événements personnalisés d'une classe. Comment puis-je faire cela en javascript.
Je voudrais faire quelque chose comme ceci:
var MyClass = function() {
};
MyClass.prototype = {
test : function() {
dispatchEvent('ON_TEST');
}
};
var mc = new MyClass();
mc.addEventListener('ON_TEST', handler);
function handler() { alert('working...') }
Comment est-ce possible avec du Javascript?
Vous devez vous connecter pour publier un commentaire.
Dois rouler votre propre. Voici juste un moyen.
Vous devriez également ajouter un "removeListener", qui devra trouver le rappel dans le tableau et de le retirer de la pile (ou, éventuellement, de supprimer tous les auditeurs pour l'ensemble d'un événement si pas de rappel donnée).
function (eventName, callback) { (this._events[eventName] = this._events[eventName] || []).push(callback); },
? ou est-ce simplement une question de lisibilité?