【问题标题】:How to trigger a custom event in capture phase如何在捕获阶段触发自定义事件
【发布时间】:2014-09-01 08:31:15
【问题描述】:

有没有办法在 javascript 中触发自定义事件,以便使用 capture 模型传播?

我有一个元素层次结构,我用它作为对象之间通信的一种手段。层次结构的每一级代表对象的一个​​子族。理想情况下,我可以使用它们的共同祖先触发每个家庭或子家庭的对象的事件。

例如:

animals |_ | mammals | |_cats | |_dogs |_ reptiles |_alligators |_dinosaurs

(请不要对我的分类不充分的 cmets :))

我希望能够为所有动物、所有哺乳动物或所有猫触发事件,或为单个猫实例触发事件。

但是,我只能找到使用冒泡阶段的自定义事件示例,所以我想知道是我遗漏了什么还是这真的不可能。

我知道我可以在所有实例的根元素上使用事件委托,但它的扩展性非常差(这个系统需要处理数千个所有类型的事件)。

有什么想法吗?

【问题讨论】:

  • 本质上,您是在尝试为每个组注册一个事件处理程序,而不是附加到其中的每个对象?
  • 作为用例之一 - 是的。我希望能够通过他们的父母为任何一组后代触发一个事件,而无需遍历每个后代以在每个实例上手动触发它
  • 您找到解决方案了吗?

标签: javascript events custom-events


【解决方案1】:

这在当前的 DOM 事件规范中是不可能的,因为它只支持冒泡阶段。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-10-05
    • 1970-01-01
    • 1970-01-01
    • 2013-03-14
    • 2021-03-13
    • 2012-11-06
    • 1970-01-01
    • 2019-09-09
    相关资源
    最近更新 更多