EaselJS - 容器鼠标事件处理
EaselJS - container mouse events handling
我有一个包含多个元素的容器。我希望能够检测到对容器 children 和容器区域(我定义的矩形)的点击。
每当我在容器中定义一个 hitArea
时,它的 children 不再接收鼠标事件 - 它们被分派到容器。但是,如果没有 hitArea
,我无法在容器区域检测到点击。
说明问题的小提琴:
我想到的唯一 solution 是使用 hitArea
并且在每个事件中验证它可能被发送到的容器中没有 child。然而,这种方法非常令人恼火:尽管我对容器级别的鼠标事件很感兴趣,但我必须捕获所有类型的鼠标事件。
这种情况有简单的解决方案吗?
我决定使用另一种解决方法 - 我创建了一个 DisplayObject
,为其指定了 hitArea
,并将其作为第一个 child 添加到 Container
,缺点是我必须在 hitArea-object 和容器中定义事件处理程序。但与我发现的其他解决方案相比,它需要的工作要少得多。
已更新 fiddle。
我有一个包含多个元素的容器。我希望能够检测到对容器 children 和容器区域(我定义的矩形)的点击。
每当我在容器中定义一个 hitArea
时,它的 children 不再接收鼠标事件 - 它们被分派到容器。但是,如果没有 hitArea
,我无法在容器区域检测到点击。
说明问题的小提琴:
我想到的唯一 solution 是使用 hitArea
并且在每个事件中验证它可能被发送到的容器中没有 child。然而,这种方法非常令人恼火:尽管我对容器级别的鼠标事件很感兴趣,但我必须捕获所有类型的鼠标事件。
这种情况有简单的解决方案吗?
我决定使用另一种解决方法 - 我创建了一个 DisplayObject
,为其指定了 hitArea
,并将其作为第一个 child 添加到 Container
,缺点是我必须在 hitArea-object 和容器中定义事件处理程序。但与我发现的其他解决方案相比,它需要的工作要少得多。
已更新 fiddle。