我有一个嵌入的 a-scene 元素,用户可以单击其中进入 Aframe 全屏模式。在特定事件(用户导航到场景中的特定位置)上,我想触发全屏模式的自动退出。这相当于用户按下 ESC 键,但是以编程方式按下的。我怎样才能做到这一点?
这是我的场景代码:
...
<a-scene id="3d-view" embedded style="z-index: 9999;">
<a-entity position="33 0 -33" rotation="0 180 0" id="camera" camera="userHeight: 1.6" listener>
</a-entity>
...
<!-- Lighting -->
<a-light type="ambient" color="#bbb"></a-light>
<a-light color="#ccc" position="0 30 0" distance="100" intensity="0.4" type="point"></a-light>
<a-light color="#ccc" position="3 10 -10" distance="50" intensity="0.4" type="point"></a-light>
<a-entity id="a"></a-entity>
</a-scene>
...
退出全屏的方法如下:
var obj3d = document.querySelector("#camera").object3D;
AFRAME.registerComponent('listener', {
tick: function () {
if(Math.abs(obj3d.position.x) < 35) {
//HERE IT SHOULD EXIT FULL SCREEN IF WE ARE IN FULL SCREEN
}
}
});
最佳答案
this.el.sceneEl.exitVR()
或
exitFullscreen();
function exitFullscreen () {
if (document.exitFullscreen) {
document.exitFullscreen();
} else if (document.mozCancelFullScreen) {
document.mozCancelFullScreen();
} else if (document.webkitExitFullscreen) {
document.webkitExitFullscreen();
}
}
关于javascript - 退出 Aframe 全屏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44110801/