2017-05-22 23 views
0

私はa-scene要素が埋め込まれています。ここでユーザーはAframeフルスクリーンモードに入ることができます。特定のイベント(シーン内の特定の位置に移動したユーザー)では、全画面モードの自動終了をトリガーします。これは、ユーザーがESCキーを押すのと同じですが、プログラム的には同じです。これどうやってするの?ここでAframeのフルスクリーンを終了

は私のA-シーンコードです:ここで

... 
<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 
     } 
    } 
}); 

答えて

2

this.el.sceneEl.exitVR()

または

exitFullscreen(); 

    function exitFullscreen() { 
    if (document.exitFullscreen) { 
    document.exitFullscreen(); 
    } else if (document.mozCancelFullScreen) { 
    document.mozCancelFullScreen(); 
    } else if (document.webkitExitFullscreen) { 
    document.webkitExitFullscreen(); 
    } 
} 
+0

おかげで、これは、 focを終了しないカーソルの私たち。ユーザーが埋め込まれたシーンをクリックすると、カーソルを戻すためにエスケープキーを押し続ける必要があります。任意のアイデアをどのように完全にUIコントロールで埋め込まれたシーンから抜け出すには? – bear

+0

ポインタロックを使用していますか?あなたは 'document.exitPointerLock();'を実行することができます。 – ngokevin

+0

document.exitPointerLock();一緒にexitVR()を使って解決しました – bear

関連する問題