我正在尝试设置熔断器来触发悬停动画,同时仍然能够单击/点击环境中的项目。添加<a-cursor position="0 0 -0.25"></a-cursor>为我的相机的子项会在屏幕上显示环形光标,并允许悬停 mouseenter/mouseleave 事件监听器按预期触发。然后我添加cursor="rayOrigin:mouse;"到场景中,以便我能够单击场景中的对象,但这会破坏悬停动画。对于悬停动画,我有一个不可见的平面,但位于具有 mouseenter/mouseleave 事件监听器的动画对象前面。但是,当光标在光线投射中同时具有平面和对象时,将调用 mouseleave。cursor="rayOrigin:mouse;"如果省略,则不会发生这种情况。
1 回答
翻翻过去那场雪
TA贡献2065条经验 获得超14个赞
干扰<a-cursor>场景的光标
<a-scene cursor="...">
<a-camera>
<a-cursor>
</a-cursor>
因为raycaster
创建的 by<a-cursor>
会发出事件(在交叉和清除时),这些事件会冒泡并被 s 光标捕获<a-scene>
。
为了防止他们干扰,可以摆脱两者之间的父子关系:
<a-camera>
<a-cursor>
</a-cursor>
</a-camera>
<a-entity cursor="rayOrigin: mouse"></a-entity>
在这个小提琴中检查一下
另一种方法是动态添加/删除一个光标,以便一次只有“预期”的光标在工作。
添加回答
举报
0/150
提交
取消