2013-09-24 24 views
5

tôi có các thiết lập sau:sự kiện onkeyup trong Safari trên iOS7 từ một bàn phím bluetooth

  • quét Bluetooth
  • iPad
  • trang web với một textfield cho quét đầu vào

Cách sử dụng:

  • Trường văn bản tiêu điểm người dùng và mã vạch quét bằng blu máy quét etooth
  • Scanner thêm ENTER (13) ở phần cuối của quá trình quét

Vấn đề:

Mở Safari trong iOS7 có vẻ là một sự thay đổi về cách sự kiện bàn phím được xử lý trên các thiết bị bluetooth. Mã ...

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

... phải trả về thông tin về phím được nhấn. Thay vào đó, tôi nhận được ...

keyCode: 0 
keyIdentifier: "Unidentified" 

... cho dù tôi nhấn phím nào.

Cùng một mẫu kết quả là máy quét bluetooth và bàn phím bluetooth.

Cảm ơn/E

+0

nếu có ai đó gặp phải vấn đề này: vẫn gặp sự cố này 4 năm sau https://stackoverflow.com/questions/45924702/ipad-bluetooth-keyboard-returns-keycode-of-0-for-any-key-with- onkeyup –

Trả lời

3

Dường như "onkeypress" hoạt động như mong đợi.

Vì đây là một vấn đề bị bẻ cong trong dự án Sencha Touch và Sencha Touch không có sự kiện nhấn phím trên các trường văn bản, tôi đăng mã giải quyết vấn đề của mình.

{ 
    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); 
        } 
       }; 
      } 
     } 
    } 
} 
0

Tôi gặp phải sự cố tương tự @EmilPennlov. Tôi đã có thể giải quyết vấn đề này bằng cách sử dụng đồng hồ $ trên trường nhập. Làm việc như người ở.

Các vấn đề liên quan