我在CreateJS / EaselJS中有两个画布和两个画面。第一个阶段将autoClear设置为false,我正在以stagemousedown事件开始动态绘制它。第二阶段使用nextStage将鼠标事件发送到第一阶段。第二阶段有一个接口,比如Bitmap,我想按下去另一个页面。当我单击位图时,下面的舞台会进行动态绘制。我希望点击Bitmap不要进入第一阶段,但是stopImmediatePropagation不起作用,也不会在下面放置一个带有mouseEnabled的Bitmap克隆。我可以在Bitmap上使用mousedown,这样用户就不会注意到这一点,但是想知道是否有办法禁止鼠标事件通过顶级阶段,如果它们作用于一个事件设置为捕获的对象?提前谢谢。
答案 0 :(得分:0)
stagemousedown
和其他阶段事件与EaselJS对象事件模型分离。它们是全能的事件,基本上代表了鼠标与鼠标的互动。因此,捕获和停止这些事件不会中断显示列表层次结构。
通常,如果要阻止同一阶段中的其他事件,可以创建一个阻止交互的画布大小的框(Shape等)。处理nextStage
时,尤其如此,因为我们传递了EaselJS显示列表中未被对象处理的事件。
更好的方法可能是在nextStage
上切换stagemousedown
,因此在点击事件期间它为空。不确定这是否有效,但它是一个开始。