Jor*_*man 2 javascript oop jquery html5-canvas
对不起标题是多么模糊,但我不完全确定如何总结我正在尝试的问题.
首先,这是迄今为止我所拥有的jsFiddle.
我刚开始学习使用HTML5 canvas元素,以及使用js OOP.
正如你从小提琴中看到的那样,我创建了一个矩形类(这样我可以创建尽可能多的正方形,虽然我认为这可能是多余的),并引用它来绘制.但是,当我设置时height = width,我总是以非正方形结束.我对使用画布相对较新,但我认为这是因为正方形的高度和宽度是相对于canvas元素的大小,因此canvas元素的高度和宽度必须不成比例(因为它们的指定百分比值是相对的确定像素).
我可以通过将方块的大小设置为像素来解决这个问题,但是当调用我的按键事件时,方块根本不会移动.
此外,我有按键事件,以便用户可以使用箭头键移动方块.但是,即使我在代码中翻转它们,上/下键值似乎也会被反转?左/右键什么都不做?
而且,我也只能让广场向上/向下移动一次?只要用户不断按下相应的按钮,我的代码是否应该允许我增加x/y值?
如果有人可以检查出来并给我一些关于我做错的指示,那就太好了!我正在尝试很多新东西,因为它只是一种学习经历,所以如果你有这种倾向,请帮助我学习!
你经历了一个经常出现问题的事情,即调整画布大小 - 尝试使用CSS.使用CSS进行画布绘制将缩放它 - 而不是更改分辨率.要设置分辨率,请使用HTML中的width=和height=属性.
至于运动,似乎keyup效果更好.然而,对于up密钥,y将减少(顶部是0,底部是积极的东西).
我要强调的其他一些事情.
使用canvas上下文的变量名称有点模棱两可.画布与用于绘图的上下文之间存在差异.
此外,您说明//browser doesn't support html5如果ctx不存在.但是,如果浏览器不支持canvas/HTML5,则.getContext('2d')函数调用将失败,因为在这种情况下它不是函数.else如果函数确实存在但未返回某些内容,则只会执行您的语句.那可能永远不会是这种情况.
空else循环也不是很有用,但这并没有伤害:)
| 归档时间: |
|
| 查看次数: |
815 次 |
| 最近记录: |