【问题标题】:Keydown keycode not returning expected resultKeydown键码未返回预期结果
【发布时间】:2013-04-03 02:35:53
【问题描述】:

我对 keydown 事件的 keyCode 属性返回的字符代码有点困惑。 我期待这些代码与 ascii 代码一致。他们中的很多人似乎都这样做了,但我得到了一些意想不到的结果:例如删除键和“。”键

使用下面的代码:我得到以下代码: DeleteKey: 46 (ASCII val = 127)

DelKey:110

'.' : 190 - 它甚至不在默认的 ascii 表中。

似乎删除键映射到 '.' 的 Ascii 代码。键

我正在使用 IE 9 进行测试。

这些应该映射到 ascii 表中的十进制条目是我的误解吗?

<script type="text/javascript">

    $(document).ready(function () {
        $("body").live("keydown", function (e) {
            console.log(e.keyCode);
        });
    });


</script>

<div id="parent">
<span id="target">Test</span>
</div>

【问题讨论】:

  • 使用 e.which 获取密钥代码 - api.jquery.com/event.which
  • 查看this...正如它所说,键码和ASCII值相同。
  • 好的,谢谢。我会看看链接@jahroy

标签: javascript jquery keycode


【解决方案1】:

我不认为 keyCode 和 ASCII 是一样的。

要获取keyCode的值,可以使用

$("body").live("keydown",function(e){
    console.log(String.fromCharCode(e.keyCode));
})

【讨论】:

  • 是的,我将其用于显示目的,但在某些情况下我必须对 keyCodes 采取行动。我将查看@jahroy 提供的链接中的映射值
猜你喜欢
  • 2011-08-09
  • 2010-09-22
  • 2021-05-17
  • 2018-02-19
  • 2018-03-23
  • 2020-03-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多