gpt4 book ai didi

Javascript:event.which 和 charCodeAt 协同工作

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

我在按键时使用 event.which 获取用户键入的内容,并使用 String.fromCharCode 输出。

用户类型:a
event.which:67
输出:A

对于数字和字母我可以处理,但是当谈到特殊字符时,我得到完全不同的输出。

用户类型:-
事件:189
输出:½

经过研究,我遇到了函数charCodeAt,使用这个函数,输出非常完美,甚至是特殊字符。

不幸的是,我不能使用 charCodeAt,因为用户直接从 $(文档)而不是从字段中输入。

所以,问题是,有没有一种方法可以从 keyPress 事件中获取正确的 charCode。哪个?

如果还是想不通我的疑惑,我给你一个Fiddle =)

最佳答案

使用 keypress 事件代替 keyup。它报告字符代码而不是键代码,它在实际字符被键入时触发,而不是在释放键时触发,因此它也处理重复的字符。

$('#field').focus().keypress(function(e){
var key = e.which;
$("#key").val(String.fromCharCode(key));
});

http://jsfiddle.net/Guffa/QCHt7/1/

编辑:

如果你想在任何地方捕捉按键,你必须在文档上 Hook 事件,还要在任何消耗按键的元素上 Hook 。例如,文本框将处理按键并且不会让它冒泡到父元素。

关于Javascript:event.which 和 charCodeAt 协同工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10744793/

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