我正试图用这种代码使用javascript / jQuery来捕捉Backspace和Delete键的紧急事件。
$("textarea[name=txt]").keypress(function(e){
var keycode = e.keyCode ? e.keyCode : e.which;
if(keycode == 8){ // backspace
// do somethiing
alert(keycode);
}
if(keycode == 46){ // delete
// do somethiing
alert(keycode);
}
});
这些代码行在Firefox(3.6.12)中完美运行。这意味着按下Backspace或Delete时会弹出警报。 但这不适用于Internet Explorer(8)
有人可以建议我以不同的方式在Internet Explorer中捕获这些关键的新闻事件吗?
答案 0 :(得分:25)
如果你想支持IE并且使用特殊密钥(例如delete
和backspace
),我建议改为使用keydown
/ keyup
。
特殊键
资源管理器不会触发按键 删除,结束,输入,转义事件, 功能键,主页,插入, pageUp / Down和tab。
如果您需要检测这些密钥,请帮忙并搜索其keyCode onkeydown / up ,并忽略onkeypress和charCode。
您可以阅读有关 Detecting keystrokes (Quirksmode) 的跨浏览器问题的更多信息。
答案 1 :(得分:-4)
退格键代码将采用值= 83 。
如果文本框中没有任何字符,并且我们正在尝试按退格键,则密钥代码将为= 8 。