我想用 Three.js 制作游戏,但如何使其全屏显示?我看见本文 http://learningthreejs.com/blog/2011/11/17/lets-make-a-3d-game-make-it-fullscreen,并且我在代码中包含了 THREEx,但是当我这样做时:THREEx.FullScreen.request()
什么都没发生!我查看了 THREEx 代码,并对其进行了这样的更改,以便进行调试:
THREEx.FullScreen.request = function(element)
{
element = element || document.body;
if( this._hasWebkitFullScreen ){
element.webkitRequestFullScreen();
console.log("f");
}else if( this._hasMozFullScreen ){
element.mozRequestFullScreen();
console.log("g");
}else{
console.assert(false);
}
}
因此,这默认使 document.body 全屏显示,并在控制台中打印“f”。但是——什么也没有!控制台中没有错误消息或任何东西...而且我已经尝试过他的池示例,它有效,所以我很确定这不是我的计算机的错...
你必须:
- 当用户允许时请求,例如在
keydown
。我想原因和打开弹出窗口是一样的。网页自动随机切换全屏可以说比自动打开的弹出窗口更烦人。
- 请求元素全屏,而不是
document
.
- Call
request
with this
set to THREEx.FullScreen
(所以就像下面这样称呼它)。
So e.g.:
document.body.addEventListener("keydown", function() {
THREEx.FullScreen.request();
}, false);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)