プレーヤーがさまざまな既存のゲームに参加できる Three.js を使用して、3D マルチプレーヤー ゲームを作成しています。「再生」をクリックすると、レンダラーがページとフルスクリーンに追加されます。これはうまく機能しますが、問題は、フルスクリーンを終了しても追加されたままになることです。削除したいのですが、いつになるかわかりません。
つまり、基本的には、「この要素が全画面表示を終了しました」というイベントを探しています。
これは、レンダラーをページに追加する方法です。
container = document.getElementById('container');
document.body.appendChild(container);
var renderer = new THREE.WebGLRenderer({antialias: true});
renderer.setSize( WIDTH, HEIGHT);
container.appendChild( renderer.domElement );
これを全画面表示する方法は次のとおりです。
THREEx.FullScreen.request(container);
renderer.setSize(screen.width, screen.height);
また、誰かがマウスをページの上部に向けたときに、迷惑なヘッダーが表示されないようにする方法はありますか? そして、Firefox と Chrome でpreventDefault
?
編集:
「fullscreenchange」イベントは実際に発生しますが、ブラウザによって名前が異なります。たとえば、Chrome では「webkitfullscreenchange」と呼ばれ、Firefox では「mozfullscreenchange」と呼ばれます。