【发布时间】:2020-07-14 20:08:50
【问题描述】:
执行以下代码:
var marker = document.createElement('a-marker');
marker.setAttribute('preset', 'hiro');
marker.setAttribute('scale', '0.75 0.75 0.75');
sceneEl.appendChild(marker);
并检查生成的文档得到:
<a-marker preset="hiro" scale="" arjs-anchor="" material="" arjs-hit-testing=""></a-marker>
预设设置正确,但比例尺中没有值。如果我将scale 更改为randomName,它会正确设置。我究竟做错了什么?请注意,我使用的是 ar.js,它创建了 a-marker 元素类型,它是 aframe 框架的 a-entity 的扩展。
编辑:添加了最少的可重现代码。代码 sn-p 控制台记录相同,即未设置比例。
<!DOCTYPE html>
<html>
<head>
<script src="https://aframe.io/releases/1.0.4/aframe.min.js"></script>
<script src="https://raw.githack.com/AR-js-org/AR.js/master/aframe/build/aframe-ar-nft.js"></script>
<script>
window.onload = () => {
var sceneEl = document.querySelector('a-scene');
var marker = document.createElement('a-marker');
marker.setAttribute('preset', 'hiro');
marker.setAttribute('scale', '0.75 0.75 0.75');
console.log(marker);
sceneEl.appendChild(marker);
};
</script>
</head>
<body>
<a-scene vr-mode-ui="enabled: false" embedded
arjs="sourceType: webcam; debugUIEnabled: false;">
</a-scene>
</body>
</html>
【问题讨论】:
-
这段代码看起来不错,你还确定这种情况吗...
-
我没有进行检查,而是做了一个如下所示的 Scott Marcus 的 console.log,控制台显示与上面相同的输出,如果我将 scale 更改为 randomName,则再次正常工作。
标签: javascript aframe ar.js