【问题标题】:onkeyup event in Safari on IOS7 from a bluetooth keyboard来自蓝牙键盘的 IOS7 上 Safari 中的 onkeyup 事件
【发布时间】:2013-09-29 21:01:45
【问题描述】:

我有以下设置:

  • 蓝牙扫描仪
  • iPad
  • 带有用于扫描输入的文本字段的网页

用法:

  • 用户关注文本字段并使用蓝牙扫描仪扫描条形码
  • 扫描程序在扫描结束时添加 ENTER (13)

问题:

在 IOS7 的 Safari 上,蓝牙设备上键盘事件的处理方式似乎有所改变。 代码...

window.onkeyup = function (e) {
    console.log(e.KeyboardEvent)
}

... 应该返回有关按下的键的信息。相反,我得到...

keyCode: 0
keyIdentifier: "Unidentified"

...无论我按哪个键。

蓝牙扫描仪和蓝牙键盘的结果展位相同。

谢谢/E

【问题讨论】:

标签: safari bluetooth ios7 keyup onkeyup


【解决方案1】:

似乎“onkeypress”按预期工作。

由于这是在 Sencha Touch 项目中遇到的一个问题,而且 Sencha Touch 在文本字段上没有按键事件,所以我发布了解决我的问题的代码。

{
    xtype:'searchfield',
    name:'search',
    placeHolder:'search',
    listeners: {
        painted: {
            fn: function () {
                var me = this;
                me.element.dom.onkeypress = function (e) {
                    if (e.keyCode === 13) {
                        me.fireEvent('searchkeypress', me, e);
                    }
                };
            }
        }
    }
}

【讨论】:

    【解决方案2】:

    我遇到了类似的问题@EmilPennlov。我能够通过在输入字段上使用 $watch 来解决这个问题。像魅力一样工作。

    【讨论】:

      猜你喜欢
      • 2018-02-06
      • 2023-02-13
      • 2018-02-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-08
      • 1970-01-01
      相关资源
      最近更新 更多