pageEvent.js 770 Bytes
define(function () {
    var handlers = {
        change: []	// pageChange的页面回调
    };

    return {
        register: function (evtName, handler) {
            if (!handlers[evtName]) return this;

            handlers[evtName].push(handler);

            return this;
        },
        destory: function (evtName, handler) {
            if (!handlers[evtName]) return this;

            var index = handlers[evtName].indexOf(handler);

            ~index && handlers[evtName].splice(index, 1);

            return this;
        },
        trigger: function(evtName) {
            if(!handlers[evtName]) return;

            handlers[evtName].forEach(function(h) {
                h();
            });
            handlers[evtName] = [];
        }
    };
});