作者: | 来源:互联网 | 2023-09-08 14:37
为什么会停顿?效果:用键盘控制一个div移动当按下一个方向键不放,div会先停顿一下,然后才开始持续移动。原因:系统要区分用户是否连续输入,第一个到第二个之间有一个停顿时间注:了解原因才能解决问题问
为什么会停顿?
效果 :用键盘控制一个div移动
当按下一个方向键不放,div会先停顿一下,然后才开始持续移动。
原因:系统要区分用户是否连续输入,第一个到第二个之间有一个停顿时间
注:了解原因才能解决问题
问题版本代码如下:
问题描述:用js的键盘事件控制一个div移动,当按下一个方向键不放,div会先停顿一下,然后才开始持续移动。(原因:系统要区分用户是否连续输入,第一个到第二个之间有一个停顿时间)
解决方案:先开一个定时器,让div一直处于(往4个方向)准备移动的状态(初始4个方向的值都是false,div就保持在原地不动),当按下某个方向键,这个方向的值就改变为true,div就会开始往这个方向移动,松开方向键,这个方向的值就改变为false , div就停止这个方向移动了。
解决版本代码如下: