jquery + ie8 : backspace not being detected?

标签 jquery internet-explorer internet-explorer-8

我想在我的输入字段之一中禁用退格键,因此我编写了以下 jquery:

$("#noBackspacesHere").keypress(function(e){
            if(e.which == "8"){
                return false;
            }
        });

这在 Firefox 中工作正常,但在 ie8 中似乎不起作用。 我已经了解到 .keyCode 有问题,所以这就是我选择 .which 的原因。

最佳答案

@Jonathon Bolster 的代码不适用于 Opera。

这应该适用于 Opera、IE、FF 和 Chrome。

$("#noBackspacesHere").bind("keypress keydown", function(e) {
    if (e.which == 8) {
        e.preventDefault();
    }
});

此外,e.which 是检查关键代码的首选方法,因为 jQuery 规范了事件对象,因此无论您使用什么浏览器,which 都将始终存在.

关于jquery + ie8 : backspace not being detected?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4388200/

相关文章:

html - windows xp下交叉浏览ie8

javascript - 滚动一定距离后弹出文本不起作用

internet-explorer - IE11元元素破坏了SVG

html - :hover Internet Explorer 的兄弟选择器非常慢

javascript - 是否可以使用Javascript在IE8中生成虚拟键盘事件(选项卡)

对象中的 Javascript 对象错误

jquery - 如何在 Express View 之间进行页面转换?

javascript - 如何在不实际滚动的情况下确定滚动方向

javascript - 使用 onclick 启用禁用下拉菜单

internet-explorer - Grails限制了旧版浏览器