MyJSAddListener

Allows you to add additional functions to run when you call one function.

by Shawn Stark

JavaScript

var  MODULE = function() {

    //  private
    var _field1;
    var _field2;
    
    function  localFunc(p) {
        alert('localFunc');
    }
    
    //  public
    return {
        // properties
        prop1: _field1,
        
        // events
        myEvent1Handler: {},
        myEvent1: function() {myEvent1Handler();},
        myEvent2Handler: {},
        myEvent2: function() {myEvent2Handler();},
        
        addListener: function  (event,func) {
            if (event  ==  "myEvent1")
                myEvent1Handler = func;   
            
            if (event  ==  "myEvent2")
                myEvent2Handler = func;      
        },
        
        // public  methods
        method1: function (p) {
            alert('method1 says:' + p);
            MODULE.myEvent1();
        },
        method2: function  (p) {
             alert('method2 doing  stuff');
             localFunc(p);
            MODULE.myEvent2();
        }
    
    };
}();

// register for events
MODULE.addListener("myEvent1",function(){alert('fired1');});  
MODULE.addListener("myEvent2",function(){alert('fired2');});  

// use module
MODULE.method1("hello");