为什么没有event.which在IE中工作?
这是我的代码,可以在FireFox和Chrome中正常使用,但在IE中则无效。
$("#inputFeild").keypress(function(event){
alert(event.which);
});
#inputFeild
是一个textarea。
答案 0 :(得分:3)
特别是keypress
事件对于键码是不可靠的,对你正在做的事情使用适当的事件......例如,如果你需要这个值,请改用keyup
:
$("#inputFeild").keyup(function(event){
alert(event.which);
});
.keypress()
文档指出了其中一些差异:
请注意,
keydown
和keyup
提供了一个代码,用于指示按下了哪个键,而keypress
表示输入了哪个字符。例如,小写“a”将被keydown
和keyup
报告为65,但keypress
报告为97。所有事件都将大写的“A”报告为65。由于这种区别,当捕捉箭头键等特殊键击时,.keydown()
或.keyup()
是更好的选择。