1

这就是我们在 YUI3 中创建自定义模块的方法,

<script type="text/javascript">
    YUI.add('my-module', function (Y) {
       // Write your module code here, and make your module available on the Y
       // object if desired.
       Y.MyModule = {
           sayHello: function () {
               console.log('Hello!');
           }
       };
    });
</script>

但是现在我想在这个模块上定义一些自定义事件然后触发它们,我只是在YUI3官方网站上找不到任何相关信息。

我们如何才能真正做到这一点?

4

1 回答 1

2

自定义事件实际上在整个 YUI 中非常重要。该文档页面详细描述了它们:http: //yuilibrary.com/yui/docs/event-custom/。阅读此页面和侧边栏中的一些示例。

触发自定义事件的最简单和最简单的方法是从 Y 触发它,如 Y.fire("myEvent")。但是,如果您想从您的对象触发一个事件,您需要为您的对象提供 EventTarget API 并调用 this.fire("myEvent")。大多数人通过扩展 Y.Base 来做到这一点,其中包括 Y.EventTarget。见http://yuilibrary.com/yui/docs/base/——如果你扩展 Base,你会得到一个 fire() 方法,使用 on() 或 after() 监听事件的能力,以及许多其他的好东西.

于 2012-10-22T13:37:54.960 回答