Chr*_*sMJ 36 javascript keyboard jquery keypress keydown
那么.keypress和.keydown/.keyup的区别是什么?目前我正在使用.keydown,它为我的密钥返回一个.which值为38,现在如果我将其更改为.keypress,它会返回相同密钥的值109.有什么区别,为什么同一个键的值不同?
Rvd*_*vdK 23
如果你按下一个按钮它会发射keydown并释放它会发射一个keyup.的keypress通常是那些介于两者之间.
keydown并keyup谈谈哪个密钥已被更改.keypress告诉键表示哪个字符.
请注意,这完全取决于浏览器!
SpY*_*3HH 21
我将是d $%^ @ d,与按键确实存在差异,这一次我从未意识到.大声笑
看到我的小提琴,尝试类似字母"r"
http://jsfiddle.net/SpYk3/NePCm/
不知怎的,我从来没有注意到这一点
发现更多信息:
http://www.quirksmode.org/js/keys.html
"这两个属性是
keyCode和charCode.简单地keyCode说,放一个关于用户按下的实际键盘键的东西,同时charCode给出结果字符的ASCII值.这些信息位不必相同;例如,小写'a'和大写'A'具有相同的keyCode,因为用户按下相同的键,但是charCode因为结果字符不同而不同.资源管理器和Opera 不支持
charCode.但是,他们会提供角色信息keyCode,但仅限于onkeypress.onkeydown并-upkeyCode包含关键信息."
jbl*_*jbl 14
您应该阅读以下帖子:http: //javascript.info/tutorial/keyboard-events
Keydown在任何按键时触发并提供扫描码.Keydress在keydown之后触发并提供char代码,但只保证字符键.
在正常情况下,请访问keyup:
$(document).keyup(function(e){
console.log(e.which);
});
Run Code Online (Sandbox Code Playgroud)
原因:
keydown保持当用户拿着钥匙下来射击,而keypress与keyup火一次.keypress不检测特殊键(例如SHIFT),keydown并且keyup.