gpt4 book ai didi

javascript - firefox 上的关键代码

转载 作者:行者123 更新时间:2023-11-30 17:41:08 25 4
gpt4 key购买 nike

我必须从 html 输入中禁用一些符号。e.which 在 Firefox 上无法正常工作。 Firefox 禁用 backspace 等。这是 JS Fiddle :

var code = window.event ? event.keyCode : e.which;

event.keyCode 适用于 firefox,但不适用于 String.fromCharCode(code)

最佳答案

jQuery 规范化了 e.which,所以你根本不用担心这个。
此外,只听正确的键码要容易得多,没有理由将键码转换为字符只是为了用 indexOf 过滤掉它?

$('#foo').keydown(function(e) {
var code = e.which;
if (code == 8 || code == 13) return true; // backspace and enter
if (code < 48 || code > 57 || code == 188 || code == 190) return false;
});

FIDDLE

要保持大多数键处于事件状态,并且主要是禁用字符,您可以像这样过滤

$('#foo').keydown(function(e) {
var key = e.which;
if (!e.shiftKey && !e.altKey && !e.ctrlKey &&
key >= 48 && key <= 57 || // numbers
key >= 96 && key <= 105 || // Numeric keypad
key == 190 || key == 188 || key == 109 || key == 110 || // comma, period and minus, . on keypad
key == 8 || key == 9 || key == 13 || // Backspace and Tab and EnterEnd
key == 35 || key == 36 || // Home and
key == 37 || key == 39 || // left and right arrows
key == 46 || key == 45) // Del and Ins
return true;

return false;
});

FIDDLE

关于javascript - firefox 上的关键代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21061801/

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