这就是我们如何在 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 官方网站上找不到任何相关信息。
我们怎样才能真正做到这一点?
最佳答案
自定义事件实际上在整个 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() 监听事件的能力,以及许多其他好东西。
关于javascript - 在 YUI3 的自定义模块上定义和触发自定义事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13011061/