我正在尝试写一个时钟或计时器。
function ttimer(){
var options = {
hour: 'numeric',
minute: 'numeric',
second: 'numeric'
};
var el_ttimer=document.querySelector('#a-ttimer');
var d = new Date();
el_ttimer.setAttribute('text', 'text: '+d.toLocaleString("ru", options)+'; font: Droid Sans Mono; size: .77;');
}
setInterval(ttimer, 1000);
<a-entity a-ttimer position="-12 0 -5" id="a-ttimer"></a-entity>
如何顺利更新文字?例如,计时器。
如何在场景中顺利创建新的图元?
你有最好的练习吗?
答案 0 :(得分:2)
您可以编写一个具有tick
处理程序的组件,该处理程序将挂钩到场景的渲染循环中。 https://aframe.io/docs/0.3.0/core/component.html#tick-time-timedelta
AFRAME.registerComponent('timertext', {
tick: function (time, timeDelta) {
// ...
el_ttimer.setAttribute('text', 'text: '+ d.toLocaleString("ru", options) + '; font: Droid Sans Mono; size: .77;');
}
});
<a-entity timertext text></a-entity>
如果要创建新基元,请使用AFRAME.registerPrimitive
。 https://aframe.io/docs/0.3.0/primitives/#register-a-primitive
AFRAME.registerPrimitive('a-ttimer', {
defaultComponents: {
timertext: {},
text: {}
},
mappings: {
text: 'text.text'
}
});
<a-ttimer text="0"></a-ttimer>