Naz*_*zar 12 javascript jquery keydown
当用户按下某个键时,我希望keydown()事件只被调用一次,但是在用户停止按键之前调用它.
这是我想要做的:
$(document).keydown(function(event){
var keycode = (event.keyCode ? event.keyCode : event.which);
if(keycode == '39'){
$("#box").animate({"left": "+=30px"}, "fast");
}
});
Run Code Online (Sandbox Code Playgroud)
因此,当用户按下右箭头键时,我希望div#框向右移动30px.它会移动,但如果用户按下键,它就会飞走.
我需要它按每次按下移动30px,并停止,即使用户按下按键.你知道怎么做吗?
Mar*_*c B 18
跟踪哪些键已关闭,并忽略键码39,直到键盘清除它:
var down = {};
$(document).keydown(function(event){
var keycode = (event.keyCode ? event.keyCode : event.which);
if(keycode == '39'){
if (down['39'] == null) { // first press
$("#box").animate({"left": "+=30px"}, "fast");
down['39'] = true; // record that the key's down
}
}
});
$(document).keyup(function(event) {
var keycode = (event.keyCode ? event.keyCode : event.which);
down[keycode] = null;
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10246 次 |
| 最近记录: |