如何捕获触摸设备的屏幕键盘'keydown'和'keyup'事件

use*_*234 15 javascript keyboard jquery touch on-screen-keyboard

我已经定义了键盘事件,它在桌面上运行良好,但触摸设备没有获得屏幕键盘事件.如果用户正在输入,我需要捕获.我使用了以下代码段:

$('#id').keydown(function(e){
  //some code here
});

$('#id').keyup(function(e){
  //some code here
})
Run Code Online (Sandbox Code Playgroud)

我想限定在代码keydownkeyup触发即使对于触摸设备(包括片剂和手机).请建议如何捕获屏幕键盘事件并使上述代码运行.

Dom*_*een 15

您是否尝试过使用按键而不是按键

$("#id").keypress(function() {

});
Run Code Online (Sandbox Code Playgroud)

更新 :

由于安卓问题,我现在通常会像这样包裹我的支票

if ($.browser.mozilla) {
    $("#id").keypress (keyPress);
} else {
    $("#id").keydown (keyPress);
}

function keyPress(e){
    doSomething;
}
Run Code Online (Sandbox Code Playgroud)