我正在尝试更改HTML画布的分辨率。(不是宽度和高度)。画布应保持与屏幕相同的宽度和高度,但渲染分辨率应可更改。我可以通过使用浏览器中的缩放功能来复制所需的内容,但是我想知道是否有编程方式可以做到这一点。这是我尝试过的:
function resize() {
screenWidth = mathRound(window.innerWidth);
screenHeight = mathRound(window.innerHeight);
calculateUIScale();
var scaleFillNative = Math.max(screenWidth / maxScreenWidth, screenHeight / maxScreenHeight);
c.width = screenWidth;
c.height = screenHeight;
graph.setTransform(scaleFillNative, 0, 0, scaleFillNative, ((screenWidth - (maxScreenWidth * scaleFillNative)) / 2), ((screenHeight - (maxScreenHeight * scaleFillNative)) / 2));
graph.imageSmoothingEnabled = false;
graph.webkitImageSmoothingEnabled = false;
graph.mozImageSmoothingEnabled = false;
}
Run Code Online (Sandbox Code Playgroud)
这使画布适合屏幕。我想知道您是否可以以某种方式缩放canvas元素以模拟不同的分辨率。
我试图做到这一点:
c.width = 40;
c.style.width = 400;
Run Code Online (Sandbox Code Playgroud)
但是画布现在真的很小。
我正在尝试使用以下代码加载 socket.io:
<script src="http://cdn.socket.io/socket.io-1.4.5.js"></script>
Run Code Online (Sandbox Code Playgroud)
但是有些用户向我报告了以下错误:
Failed to load https://cdn.socket.io/socket.io-1.4.5.js ERR_SSL_PROTOCOL_ERROR
Run Code Online (Sandbox Code Playgroud)
这是现代浏览器的自动安全设置吗?如果可以,可以禁用吗?
是否可以在按下时获取密钥的名称:
field.addEventListener("keydown", keyDown, false);
function keyDown(event) {
...
}
Run Code Online (Sandbox Code Playgroud)
例如,当按空格键时,我想得到字符串值:"space",或沿着这些行的东西.有没有一种简单的方法可以做到这一点,还是我需要一个库.