现在我正在尝试制作一些基于浏览器的游戏。但我有一些小问题。请打开下面的代码并检查它。
http://jsfiddle.net/thisizmonster/YVz6L/4/
- 是否有更好的解决方案来处理键盘输入?
- 在移动时,我正在改变与奔跑的士兵的形象。但是正如你所看到的,我的士兵没有运行,但是在停止按下键后,它会开始运行。为什么会这样?
最佳答案
1)我想知道是否只在按下键盘时移动你的角色并在按下键盘时停止他是否会更好。但您必须小心,因为并非所有元素都支持该方法。我之前见过将表单元素放置在屏幕外的示例(例如,position:absolute; left:-999px;),并在页面加载时给予焦点。然后,表单字段接受按键,并将按键处理程序分配给它。
2) 是因为您不断地将图像 src 重置为运行图像,这意味着它会一直转到第一帧。您可以通过在按键按下时增加计数器并仅在计数器 == 1 时更改图像来解决此问题。您还需要检测按键的释放,以便可以将图像更改回来并重置图像计数器为 0。
关于jQuery 更改图像 src 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7425821/