1

CanJS文档有一个这样的例子:

var Todos = can.Control.extend({
    init: function( element , options ) { ... },

    'li click': function( li ) { ... },
    'li .destroy {destroyEvent}': function( el, ev ) { 
        // previous destroy code here
    }
});
// create Todos with this.options.destroyEvent
new Todos( '#todos', { destroyEvent: 'mouseenter' } );

但是,如果在调用#todos之后创建,则没有事件绑定到未来元素,或者如果其中的方法根据需要删除了预先创建的虚拟对象。如何在控件中重新绑定自定义事件?在实例化调用之后?new TodosTodos#todosControl

4

1 回答 1

1

只需使用 Control.on(); http://canjs.com/docs/can.Control.prototype.on.html

您可以指定要侦听的事件,或者只调用不带参数的函数,控件侦听所有事件。

于 2013-09-12T15:17:58.837 回答