[英]Resize Canvas when viewport width/height is changed without having to refresh
我已经根据教程设置了 canvas,但我需要让它响应。 目前,如果我更改视口大小并刷新,我可以调整 canvas 的大小,但我需要它实时进行。
HTML:
<canvas id="canvas" width="" height=""></canvas>
JS:
var canvas = document.querySelector('canvas');
canvas.width = window.innerWidth
canvas.height = window.innerHeight;
window.addEventListener('resize',() => {
canvas.setSize(window.innerWidth,window.innerHeight);
})
var c = canvas.getContext('2d');
//Rectangles
c.fillStyle = "rgba(255,0,0,0.2)"
c.fillRect(50, 100, 100, 100);
我试过添加一个 EventListener 但控制台给了我以下错误:
未捕获的类型错误:canvas.setSize 不是函数”
我如何让 EventListener 工作?
你可以使用类似的东西:
canvas.addEventListener('resize', () => {
canvas.width = window.innerWidth;
canvas.height = window.innerHeight;
});
canvas.setSize
真的不是一个东西,所以这就是你得到 TypeError 的原因。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.