对不起,标题是多么模糊,但我不完全确定如何总结我想要问的东西。HTML5画布绘制和更新
首先,这里是什么,我至今一jsFiddle。
我刚开始学习使用HTML5 canvas元素,以及使用js OOP。
你可以从小提琴看到,我创建一个矩形类(这样我可以创造尽可能多的广场越好,但我认为这可能是多余的),并引用它来绘制。但是,当我设置height = width
时,我总是以非方形结束。我对使用画布相对比较陌生,但我认为这是因为正方形的高度和宽度与画布元素的大小有关,所以画布元素的高度和宽度不能成比例(因为它们的赋值百分比值相反确定像素)。
我可以用正方形的大小设置为像素解决这个问题,但后来当我叫按键事件,方完全不动。
此外,我有keypress事件,以便用户可以用箭头键移动广场。然而,即使当我在代码中翻转它们时,上/下键值似乎也被反转了。左/右键不做任何事情?
而且,我也只能让广场向上/向下移动一次?只要用户一直按下相应的按钮,我的代码不应该允许我增加x/y值吗?
如果有人可以检查一下,并给我一些关于我做错了什么的指针,那会很棒!我尝试了很多新东西,因为它只是一个学习体验,所以如果你觉得如此倾向,请帮助我学习!
'else'语句甚至不需要在那里,因为放置在开始和结束'canvas'标记内的内容是不支持'canvas'时显示的内容。 –
谢谢!这是完美的作品,虽然我不是使用'.keyup'的巨大粉丝,因为用户必须反复按下按键来移动正方形,而不是能够按住键... –
@Jordan Foreman :请看看http://jsfiddle.net/DqrEm/6/。通过设置标志并运行间隔,您可以获得流畅的动画。同时按键也可以这样。 – pimvdb