0

我正在尝试创建一个可以与 Knockout.js 一起使用的小部件

我从这里获取了这个例子的 jquery 演示小部件:

我的代码在这里

我想要做的是绑定到对象内的自定义事件:

    this._trigger("random", event, colors)

所以在我的淘汰赛绑定中,我有这个代码:

ko.utils.registerEventHandler(element, "random", function (event) {
            alert("Got to here");
        });

我希望在触发触发器时触发警报,但它没有发生。

但是,如果我在修改后的代码中绑定到 click.colorize,则警报会触发。

谁能解释为什么没有拾取触发的事件?

4

1 回答 1

0

解决方案是设置小部件的 eventPrefix - 请参见此处

 widgetEventPrefix: "color",

然后像以前一样引发事件:

 this._trigger("foo");

捕捉它如下:

 ko.utils.registerEventHandler(element, "colorfoo", function (event) {
        alert("Got to here");

注意“color”和“foo”的连接。

于 2012-07-17T13:56:31.330 回答