- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
几年过去了,关于 mouseEnabled 的一些东西我还是没弄明白。我有一个 Sprite (例如这里的“天空”,它包含许多对象,其中一个是云,我不想接收鼠标事件。我将此天空覆盖在其他一些显示对象上。我希望云是可见,但不能阻止鼠标事件。如果你看到一棵树穿过云层,你应该能够点击这棵树。
在天空类中:
mouseEnabled = false;
cloud.mouseEnabled = false;
cloud.mouseChildren = false;
最佳答案
即使 Sky 将 mouseEnabled/mouseChildren 设置为 false...它仍然是一个对象,它仍然占用空间,因此仍然充当任何没有将 mouseEnabled/mouseChildren 设置为 false 的 PARENT 容器的命中区域。
因此,我怀疑您的 Sky 对象与您的 Tree 对象不在同一个父容器中。您的 Sky 对象可能有自己的父容器对象,它是拦截事件的罪魁祸首。
详细说明:任何包含 ANYTHING 的对象都将有一个命中区域并会拦截鼠标点击,即使它包含的所有单个内容(形状、子对象等)可能将 mouseEnabled/mouseChildren 设置为 false。
因此,即使您的 Sky 对象将 mouseEnabled 设置为 false,您的 Sky(及其子项)仍会占用空间,因此仍然为 Sky 的父容器提供一个命中区域来拦截鼠标事件。
因此,您的解决方案是确保 Sky 的所有父容器都将其 mouseEnabled 属性设置为 false,至少直到(但不包括)Tree 和 Sky 对象的第一个共同祖先容器。
此外,通过设置 mouseEnabled=false 并保留 mouseChildren=true,您可以拥有一个容器,其中仅选择具有 mouseEnabled=true 的子项接收单击事件:)
关于actionscript-3 - as3 mouseEnabled 对我来说仍然是个问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2248381/
几年过去了,关于 mouseEnabled 的一些东西我还是没弄明白。我有一个 Sprite (例如这里的“天空”,它包含许多对象,其中一个是云,我不想接收鼠标事件。我将此天空覆盖在其他一些显示对象上
我在调用 getObjectsUnderPoint 时获取容器时遇到问题。根据 easeljs 的文档,当容器上的 mouseEnabled 属性设置为 true 时,在调用 getObjectsUn
我是一名优秀的程序员,十分优秀!