我有一个特殊的画布类覆盖我的整个舞台,下面一层有一堆Sprite热点。如果我将热点放在与我的画布相同的图层上,如果我的鼠标位于其中一个热点内,则画布不会注册MOUSE_DOWN事件,因为热点是目标。但是,如果我将热点保留在较低层,则画布将处理所有MouseEvents。有没有办法让MouseEvents定位多个目标,以便画布和热点都响应MouseEvents? (画布是一个位图绘制类,热点应该在光标触摸它们或点击它们时触发。)
答案 0 :(得分:1)
ActionScript同时具有事件冒泡和事件捕获功能。这意味着您可以从包含元素或子元素开始侦听事件。您只需要创建正确类型的事件侦听器。捕获开始捕获父元素的事件,因为它向下移动子元素链直到它到达触发事件的元素。事件冒泡开始侦听孩子的事件并向上移动到父母。
addEventListener
的第三个参数useCapture确定你是想要冒泡还是捕捉。
听起来你想要事件冒泡,所以你想将useCapture设置为false。将在子项和父项上触发事件侦听器。
答案 1 :(得分:1)