这是我们在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官方网站上找不到任何相关信息。
我们怎么能真正做到这一点?
答案 0 :(得分: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()监听事件,以及许多其他好东西。