Javascript 如何在Firefox中将画布扩展到整个视口?

Javascript 如何在Firefox中将画布扩展到整个视口?,javascript,firefox,canvas,Javascript,Firefox,Canvas,我的网站在这里托管了一个静态测试版本: 但当我在Firefox中启动它时,画布无法正确调整大小。我认为有问题的代码如下: var _docHeight = (document.height !== undefined) ? document.height : document.body.offsetHeight; var _docWidth = (document.width !== undefined) ? document.wi

我的网站在这里托管了一个静态测试版本:

但当我在Firefox中启动它时,画布无法正确调整大小。我认为有问题的代码如下:

    var _docHeight = (document.height !== undefined) ? document.height : 
                      document.body.offsetHeight;
    var _docWidth = (document.width !== undefined) ? document.width : 
                     document.body.offsetWidth;

    ctx.canvas.width = _docWidth;
    ctx.canvas.height = _docHeight;

这段代码在WebKit浏览器中正常工作,但Gecko似乎会吐出来。

页面看起来很棒。但我认为你在Chrome上也做不好,因为调整大小后背景不会重新绘制

您应该将事件侦听器附加到onResize事件,并从该处理程序调用
canvasMain()
,以使用新的画布大小重新绘制所有内容

关于大小调整问题,您应该使用
window.innerWidth
window.innerHeight
。因为
被打包成只有320px高的内容,所以它不会填满整个页面