【问题标题】:Angular's keypress event has undefined key in ChromeAngular 的按键事件在 Chrome 中有未定义的键
【发布时间】:2015-12-12 01:26:38
【问题描述】:

我正在使用带有 ng-keypress 的简单输入字段来记录正在按下的键。

在 Firefox 上工作得很好,但我刚刚意识到在 Chrome 上,使用 Chrome 时 $event 的 key 属性是未定义的。

下面是在两个浏览器的控制台上按下“a”键的 $event 内容。

火狐:

铬:

有人知道这是什么问题吗?

【问题讨论】:

    标签: angularjs google-chrome firefox cross-browser keypress


    【解决方案1】:

    最好实现 ui keypress 而不是使用 ng-keypress,这适用于每个浏览器。

        <ng-form name="form" novalidate role="form" ui-keypress="{13:'yourfunction()'}"
    //your code
    </ng-form>
    

    【讨论】:

    • 我正在测量按键的按下和释放时间,所以我必须使用 keypress 和 keyup...
    • 你能告诉我你在测量什么吗?你的实际问题是什么?
    • 我正在测量每次按键的持续时间。
    • 看起来不错,但我在哪里可以得到这个指令?
    • 好的,我收到了指令,但遗憾的是它不起作用...结果相同。
    【解决方案2】:

    事实证明,这是 Chrome 中一个非常可靠的错误。

    在尝试了许多不同的方法后,我意识到唯一的解决方法是使用按预期工作的 keyDown 或 keyUp 事件。

    【讨论】:

      猜你喜欢
      • 2013-01-09
      • 1970-01-01
      • 1970-01-01
      • 2021-09-28
      • 1970-01-01
      • 2015-12-07
      • 2023-03-28
      • 1970-01-01
      • 2020-07-12
      相关资源
      最近更新 更多