Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Aframe 查找a-frame/a-marker的附着子对象_Aframe - Fatal编程技术网

Aframe 查找a-frame/a-marker的附着子对象

Aframe 查找a-frame/a-marker的附着子对象,aframe,Aframe,我有一个基于a帧的小程序,可以在标记上渲染文本。当用户单击标记时,我希望缩放文本,使其更加可见。我可以在标记上捕获单击事件,但如何才能使其子实体进行缩放 我的代码可以在中找到 //多标记WebAR-AR.js和Aframe-播放存档连接环境CASA-UCL //全局变量 var markersURLArray=[]; var markersNameArray=[]; var allow_clicks=false; AFRAME.registerComponent('markers_start'

我有一个基于a帧的小程序,可以在标记上渲染文本。当用户单击标记时,我希望缩放文本,使其更加可见。我可以在标记上捕获单击事件,但如何才能使其子实体进行缩放

我的代码可以在中找到


//多标记WebAR-AR.js和Aframe-播放存档连接环境CASA-UCL
//全局变量
var markersURLArray=[];
var markersNameArray=[];
var allow_clicks=false;
AFRAME.registerComponent('markers_start'{
init:function(){
log(“向场景添加标记”);
var sceneEl=document.querySelector('a-scene');
//标记列表
对于(var i=1;i{
var markerId=marker.id;
log('Marker Lost:',markerId);
允许点击=错误;
});
marker.addEventListener('单击',(evt)=>{
如果(允许单击){
console.log(“单击!!!”+marker.id);
//我想缩放框和附加到标记jere的文本
}            
});
},
});

进行了更多的测试,发现了以下问题

  • “单击”事件在标记上的效果与我预期的不一样。它将注册到整个场景,并且无论单击哪个位置,都会调用它。这不是我想要的。我正在考虑使用交点使其工作
  • 但是,如果您放置唯一的ID,则可以轻松地访问孩子。我们可以使用普通的document.getElementById(“boxelementId”);并使用setAttribute方法更改属性
  • 例:更改文本

    var markerTextEl = document.getElementById(markerTextxId);
    markerTextEl.setAttribute("value", "Current Temperature is: " + data);
    
    我在上面的“markerFound”事件中使用它来显示用户指向特定标记时的不同/当前值

    var markerTextEl = document.getElementById(markerTextxId);
    markerTextEl.setAttribute("value", "Current Temperature is: " + data);