Javascript 发布/订阅API不起作用
我编写了以下代码来实现简单的发布/订阅APIJavascript 发布/订阅API不起作用,javascript,jquery,Javascript,Jquery,我编写了以下代码来实现简单的发布/订阅API (function ($) { var o = $({}); $.each({ trigger: 'trigger', on: 'listen', off: 'stopListen' }, function (key, val) { jQuery[val] = function () { //console.log(o[key]);
(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');
});
但是,上述代码不会发出警报
观察它为什么它不工作以及如何修复它?在触发事件之前,您必须先聆听事件。尝试按以下顺序执行:
$.listen('watch', function (e, data) {
alert('Watch it');
});
$.trigger('watch');