21

我只是在监听输入元素的 keyup 事件并将结果收集到一个字符串中,如下所示

word=word+String.fromCharCode(key.keyCode);

问题是这个词是大写字母,而我希望它区分大小写。例如,如果我输入 abcef,我的累积单词就会变成 'ABCEF' 。

注意 - 我需要一个纯 JavaScript 解决方案(没有库..)有什么想法吗?

4

2 回答 2

41

keyup和之类的事件keydown将返回 65aA 以及如果该键被按住)trueevent.shiftKey

keypress事件为大写和小写字母返回不同的键码,因此要使此工作区分大小写,您应该使用该keypress事件,fromCharCode()并将返回正确的字母,区分大小写。

于 2013-02-18T20:12:06.627 回答
3

你可以随时打电话.toLowerCase()

word = word + String.fromCharCode(key.keyCode).toLowerCase();

只调用一次可能更有意义.toLowerCase(),此时你决定你已经完成了字符的积累。

于 2013-02-18T19:38:34.023 回答