您可以使用画布 id 的 html 中的样式将画布调整为页面宽度吗?
然后在画布的 js 中根据当前画布的大小调整侦听器的大小?
我有很多变量和听众硬编码只是想知道解决这个问题的最快方法是什么:)
您可以使用画布 id 的 html 中的样式将画布调整为页面宽度吗?
然后在画布的 js 中根据当前画布的大小调整侦听器的大小?
我有很多变量和听众硬编码只是想知道解决这个问题的最快方法是什么:)
首先,一个好的开始不是采用整个页面宽度,而是一个div
容器。这样,如果您最终将您的应用程序放在网站或任何地方,您的代码将适应任何容器。如果您希望它成为整页,则此容器可以是 100% 的绝对宽度/高度,没有填充/边距。
另请注意,画布有两种尺寸:
基于此,您可以使用 jquery$("#myID").width()
或知道元素的屏幕宽度height()
,这也适用于画布。基于此,您可以在 html 和/或 css 中设置所需的任何大小:
$("#myCanvas").width = 400; // The size you will draw on
$("#myCanvas").css('width', '800'); // The size it will be displayed (2x scale in X in that case)
然后,对于调整大小,您有多种解决方案:
这里的一个例子是我的画布管理器,用 CSS 纵横比调整大小。它没有记录,可能不适合您的需要,但它可以给您一些想法