A-Frame:点击事件不适用于对象

时间:2017-08-07 11:31:22

标签: aframe

我在点击时添加一个eventListener,为一个对象添加一个raycaster,但是当我点击该对象时没有任何反应。如果我打开aframe-inspector并检查对象而不进行任何更改,我将返回场景并再次单击该对象,它会向我显示eventListener中的console.log。有人知道为什么以及如何解决它?

这是我的代码:

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>

谢谢!

1 个答案:

答案 0 :(得分:0)

应该在发出它的实体上设置raycaster,在这种情况下它应该是带有光标的相机。您可以在cursor component内进行配置(raycaster白名单,远程)。

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