日期:2014-05-16  浏览次数:20367 次

js键盘监听的问题
有as2个键需要监听
键入a的时候目标div向上移动一个位置,键入s的时候目标向下移动一个位置;
一直按着将会一直移动;
事件触发是通过keypress来执行的,
但是一直按着的时候会出现一个问题:首先移动一个位置,然后停顿差不多1秒吧,然后才会保持一直移动。这个问题如何解决呢?

------解决方案--------------------
keydown这个地方做下处理
------解决方案--------------------
不懂说的对不对,请强人补充了。。
------解决方案--------------------
贴出你的代码。。
------解决方案--------------------
不知道你怎么写的
------解决方案--------------------
不要用keypress事件
使用
down事件
up事件

down的时候触发 up的时候结束
被触发的应该是一个 不断执行的定时器代码


------解决方案--------------------
JScript code

$(element).keydown(function(){
    this.bool = true;
    setInterval(foo, 10)
}).keyup(function(){
    this.bool = false;
});
function foo(){
    if(this.bool){
        return;
    }
}

------解决方案--------------------
探讨

JScript code

$(element).keydown(function(){
this.bool = true;
setInterval(foo, 10)
}).keyup(function(){
this.bool = false;
});
function foo(){
if(this.bool){
return;
}
}……