如何在Aframe中分开鼠标单击事件和路线单击事件

时间:2019-05-27 07:03:23

标签: aframe

我正在使用AFRAME创建VR编辑器... 当用户用鼠标单击某个元素时,我需要创建一个事件,而当用Aframe相机光标单击时,则需要执行不同的操作。

我找到了<a-scene cursor="rayOrigin: mouse">,但这将在鼠标和光标单击上都执行相同的单击事件。  在AFRAME中有可能吗?

1 个答案:

答案 0 :(得分:1)

通过游标元素进行区分:

AFRAME.registerComponent('on-click', {
    init: function () {
      var self = this;
      this.el.addEventListener('click', function (evt) {
        if (self.el.sceneEl === evt.detail.cursorEl) {
          console.log("MOUSE");
        } else {
          console.log("CURSOR");
        }
      });
    }
  });

示例:https://glitch.com/edit/#!/winter-sagittarius