$(document).keypress(function(e)
{
alert(e.keyCode);
if(e.keyCode==27)
{
hide_menu();
}
});
我得到除了转义键以外的所有键的警报,并且if
的成功部分永远不会被调用。为什么会发生?为什么仅用于转义的keyCode事件不起作用?
$(document).keypress(function(e)
{
alert(e.keyCode);
if(e.keyCode==27)
{
hide_menu();
}
});
我得到除了转义键以外的所有键的警报,并且if
的成功部分永远不会被调用。为什么会发生?为什么仅用于转义的keyCode事件不起作用?
使用的$(document).keyup的代替的$(document).keypress
以下代码正常工作:
$(document).keyup(function(e)
{
alert(e.keyCode);
if(e.keyCode==27)
{
alert ("Esc key");
hide_menu();
}
});
http://jsfiddle.net/tb2BD/点击输出窗口,然后按esc键。适用于Chrome。 –
为什么这不适用于keydown? –
您可以更改keypress
到keyup
(最好使用KEYUP)或:
$(document).keyup(function(e){
alert(e.keyCode);
if(e.keyCode==27){
hide_menu();
}
});
只是一个旁注,你应该使用[电子,如果你使用jQuery](http://stackoverflow.com/a/4471635/1400370) –