我正在尝试创建一个快速菜单,如果用户单击中心平面周围,则其比例从0增大到1,并且现在当用户单击“后退”按钮时,中心平面被后退按钮替换,飞机消失了,但我尝试了一些事件,但是它不起作用

https://glitch.com/~sugar-zephyr [这是我的代码的glich页面的链接] [1]

最佳答案

您正在document上触发事件,而a-scene中的实体将不会收到该事件。 DOM事件冒泡,document在顶部。直接在飞机上触发事件:

var center=document.querySelector('#center');
var quickmenuopen=false;
center.addEventListener('click',e=>{
  var planes = document.querySelectorAll('a-plane');
  var eventName = "closemenu";
  if(quickmenuopen){
    eventName = "openmenu";
  }
  var event= new CustomEvent(eventName);
  for (var i = 0; i < planes.length; ++i) {
    planes[i].dispatchEvent(event);
  }
})


已更正的故障:https://glitch.com/edit/#!/abiding-titanium?path=index.html:68:4

10-05 21:02
查看更多