Cordova:使用带键盘仿真的外部条形码阅读器时的键盘事件

时间:2014-05-21 21:01:02

标签: javascript android events cordova keyboard

我正在开发一个带有cordova最新版本的Android应用程序,以使用带有条形码阅读器的Android设备,通过USB连接键盘仿真数据传输。我正在尝试处理条形码阅读器每次读取代码时触发的keydown事件,但是系统会触发句柄功能,但我找不到告诉我键码的事件数据。

我在应用程序启动时使用该代码:

document.addEventListener('keydown',
    function(e){
    //Here should come the data but e.keycode everytimes comes with 0
});

我在上面的代码中说,事件var(e)总是没有关于触发事件的信息,就像一个常规事件对象,但没有关键事件的相关信息。

我将非常感谢任何帮助或建议。

提前致谢

1 个答案:

答案 0 :(得分:0)

以下是我使用PG和条形码扫描设备完成此操作的方法:

占位符&定时器:

var scannerdata = '';
var timer = null;

主要功能:

function getInput (e) {
        scannerdata += String.fromCharCode(e.which);
        if(timer != null) {
            clearTimeout(timer);
        }
        timer = setTimeout(function() { setInput() }, 100);
}

function setInput () {
   //add scanner data to input field::
   $('#someInput').val(scannerdata);
   scannerdata = '';

   //OR pass scanner data to function
   someOtherfunction(scannerdata);
   scannerdata = '';
}

使用的事件:

document.addEventListener('keyup', getInput, false);