Javascript 如何使Three.js全屏显示?
我想用Three.js制作一个游戏,但如何使它全屏显示?我看到了,我在代码中包含了3X,但当我这样做时:Javascript 如何使Three.js全屏显示?,javascript,html,3d,fullscreen,three.js,Javascript,Html,3d,Fullscreen,Three.js,我想用Three.js制作一个游戏,但如何使它全屏显示?我看到了,我在代码中包含了3X,但当我这样做时:THREEx.FullScreen.request()什么都没有发生!为了调试,我查看了THREEx代码,并将其更改为: THREEx.FullScreen.request = function(element) { element = element || document.body; if( this._hasWebkitFullScreen ){
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”。但是——什么都没有!控制台中没有错误消息或任何内容。。。我试过他的泳池示例,效果不错,所以我很确定这不是我的电脑的错…你必须:
键下
。我想原因和打开弹出窗口是一样的。一个随意切换全屏的网页可以说比自动打开的弹出窗口更烦人文档
request
,将this
设置为THREEx.FullScreen
(如下所示)document.body.addEventListener("keydown", function() {
THREEx.FullScreen.request();
}, false);
你什么时候叫它?我相信您只允许请求作为对用户输入的反应,例如
按键事件。真的吗?真奇怪,我不明白。。。但我会的!当我这样写的时候:document.addEventListener(“keydown”,THREEx.FullScreen.request)代码>,我得到一个错误“断言失败”。您不能请求文档全屏显示,因为它不是元素。请尝试document.body
。如果直接传递函数,函数将使用此
,它将(不正确)成为文档。尝试function(){THREEx.FullScreen.request();}
(不同)。