用CanJS为文档上触发的事件设置一个全局监听器/控制器

Set up a global listener/controller for events triggered on document with CanJS

本文关键字:一个 全局 控制器 监听器 设置 文档 CanJS 事件      更新时间:2023-09-26

可能不是常见的用例,但是我在文档上触发了几个自定义事件,并且应用程序侦听它们。例如:http://jsbin.com/uradod/3/edit

如何将其转换为CanJS控制器?我是类似的东西:http://jsbin.com/uradod/6/edit。这可能吗?如果有,怎么做?

您可以通过在事件名称前添加空格来侦听非标准事件。由于某些原因,它不能在JSBin上工作,但这里是一个Fiddle: http://jsfiddle.net/BT95c/

can.Control('Events',
/** @Static */
{},{
    " sampleEvent" : function(el, ev, data)
    {
        $('body').html('Controller: ' + data.text);
    }
});
var events = new Events(document);
$(document).trigger("sampleEvent", {text:"Event trigger"});