2014-09-04 62 views
0

画布宽度当我做设置高度和JavaScript的

canvas.width=window.innerWidth; 

我没有得到任何的问题。

当我做

canvas.style.width=window.innerWidth; 

画布仍保持其默认宽度。

当我做

canvas.width(window.innerWidth); 

我得到 “遗漏的类型错误:数量不是一个函数”。我没有称为“画布”,“宽度”,“窗口”或“innerWidth”的变量或函数。

为什么只有第一种方法有效?

+0

两种第一种方式工作,第三种方式当然不会('宽度'不是函数)。如果第二种方法不能产生所需的效果,那么你有其他的东西会覆盖它的效果(或者代码根本不会被执行)。提供一个实际证明问题的实例。 – 2014-09-04 05:09:02

回答

0

因为画布有widthheight作为属性也每次重新设置画布的高度或宽度时,画布内容将被清除。这就是为什么你的第一种方法已经奏效。

0

width是属性,而不是函数,因此是错误。画布元素的width属性会影响画布上下文,而style.width仅适用于HTML元素,所以如果此值较高,它将拉伸上下文。