pub / sub API不起作用

时间:2014-02-22 09:38:01

标签: javascript jquery

我编写了以下代码来实现简单的pub / sub API。

(function ($) {
    var o = $({});

    $.each({
        trigger: 'trigger',
        on: 'listen',
        off: 'stopListen'
    }, function (key, val) {
        jQuery[val] = function () {
            //console.log(o[key]);
            o[key].apply(o, arguments);
        }
    });
})(jQuery);

$.trigger('watch');

$.listen('watch', function (e, data) {
    alert('Watch it');
});

但是,上述代码不会提醒Watch it为什么它不起作用,我该如何解决?

1 个答案:

答案 0 :(得分:2)

在触发事件之前,您必须先听取事件。尝试按此顺序执行:

$.listen('watch', function (e, data) {
    alert('Watch it');
});

$.trigger('watch');