我对 ROLL_OVER 事件侦听器有疑问。当我使用鼠标光标进入带有动画剪辑的空白区域时,会触发 ROLL_OVER 事件。但我希望只有当鼠标光标位于彩色区域时才触发该事件。
为了更清楚:考虑“O”字母,当鼠标光标位于O字母的空白区域(O内部)之间时,不应触发事件。只有当鼠标光标位于黑色区域时才会触发。
我该如何实施?
谢谢
-奥赞
感谢@Ethan Kennerly 解决了问题
我只是想添加一些东西来帮助人们遇到和我一样的问题。在我的情况下,当我的鼠标悬停在大陆上时,我试图让大陆发光。我使用 ROLL_OVER/MOUSE_OVER 事件监听器来检查我的鼠标是否在它们上方。但是根据 Ethan Kennerly 给出的数据,我提出了另一种方法。在 Ethan Kennerly 的解决方案中,如果您的鼠标从透明区域进入大陆区域,它不会产生模糊效果,因为 ROLL_OVER 和 MOUSE_OVER 事件侦听器每次进入只会触发一次,所以我在每个大陆影片剪辑上使用了 MOUSE_MOVE 事件侦听器。对于这个声明:
if (isPixelTransparent(DisplayObject(event.currentTarget), new Point(stage.mouseX, stage.mouseY)) {
return;
}
添加“ROLL_OUT 或 MOUSE_OUT”事件侦听器函数中的任何内容,将它们全部添加到此语句中。但不要删除 ROLL_OUT 或 MOUSE_OUT 函数。