gpt4 book ai didi

javascript - `#` 的一致 keyCode

转载 作者:数据小太阳 更新时间:2023-10-29 06:07:11 26 4
gpt4 key购买 nike

虽然我知道由于 e.keyCodee.charCode 而捕获键不是微不足道的,但我认为 jQuery 几乎能够规范化大部分那些不一致。

然而 answering this question我发现字符 # 似乎有非常不一致的键码(当然这对于其他几个代码也是如此,我猜主要取决于浏览器和键盘布局)。

Chrome 和 IE 在我的电脑上产生了 191,Firefox 163,另一个用户报告了 222。Chromes window.event 甚至将 U+00BF 报告为 keyIdentifier - 根据 unicode表格应该是 ¿

您是否知道任何一致的方法来确定诸如 # 等具有不一致 keyCode 的符号,而无需执行如下令人讨厌的操作:

$('input').keydown(function (e) {
if (e.which == 191 || e.which == 163 || e.which == 222){
// hope you got the right key
e.preventDefault();
}
});

Fiddle for your pleasure.

最佳答案

这对我在使用美式键盘的 Chrome 和 Firefox 中有效:

$('[id$=txtClient]').keypress(function (e) {
if (String.fromCharCode(e.which) == '#') {
e.preventDefault();
}
});

keypress 是唯一可以为您提供有关所输入的字符 的可靠信息的事件。

演示: http://jsfiddle.net/elclanrs/ebcet/9/

关于javascript - `#` 的一致 keyCode,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17188302/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com