2017-08-07 28 views
0

我在点击时添加了一个eventListener,并且为一个对象添加了一个raycaster,但是当我点击该对象时没有任何反应。如果我打开aframe-inspector并检查对象而不做任何更改,我将回到场景,然后再次单击对象,它将显示eventListener中的console.log。有人知道为什么以及如何修复它?A框架:Click事件不适用于对象

这里是我的代码:

AFRAME.registerComponent('dinning-options', { 
 
    init: function() { 
 
    console.log('Registered'); 
 
    this.el.addEventListener('click', function (evt) { 
 
     console.log('I was clicked at: ', evt.detail.target); 
 
    }); 
 
    } 
 
});
<a-entity 
 
    dinning-options 
 
    raycaster="showLine: false; far: 100" 
 
    obj-model="obj: #dinning-obj; mtl: #dinning-mtl;" 
 
    id="dinning" 
 
    position="7.430 0 -6.35" 
 
    scale="0.003 0.003 0.003" 
 
></a-entity>

谢谢!

回答

0

raycaster应该设置在实体上,它发出它,在这种情况下,它应该是一个带有光标的摄像机。您可以在cursor component之内完成您的配置(raycaster白名单,远)。

尝试放置一个基本的<a-camera><a-cursor></a-cursor></a-camera>实体,并弄乱它的raycaster设置。

相关问题