【问题标题】:Event Binding/ Unbinding with Prototype事件绑定/与原型解除绑定
【发布时间】:2011-07-05 22:10:36
【问题描述】:

我想通过原型框架观察两个自定义事件并解绑其中一个。

意思是,当浏览器加载 DOM 元素时,我想注册以下事件:“customEvent:Task1”和“customEvent:Task2”。在整个页面上观察到这两个事件。

当调用/执行“customEvent:Task1”时,我想取消绑定/取消注册页面上的“customEvent:Task2”事件。当调用“customEvent:Task2”时,它只是执行一个函数。

那么如何使用原型框架注册(绑定)和取消注册(取消绑定)事件。

编辑: 注册的 customEvents 未绑定到元素,但在整个页面中可用。我希望这是有道理的。

【问题讨论】:

    标签: javascript prototypejs dom-events javascript-framework


    【解决方案1】:

    您可以将Event.on 用于文档本身之类的全局内容:
    Event.on 是 Prototype 1.7 的新功能)

    document.on('customEvent:Task1', function(event, element) {
        if (customEventTask2) customEventTask2.stop();
    });
    var customEventTask2 = document.on('customEvent:Task1', function(event, element) {
        // This is your second event type
    });
    

    那么当然剩下的就是fire一些事件了。

    document.fire('customEvent:Task1');
    document.fire('customEvent:Task2'); // Should not fire
    

    【讨论】:

      猜你喜欢
      • 2020-03-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多