我正在开发一个带有cordova最新版本的Android应用程序,以使用带有条形码阅读器的Android设备,通过USB连接键盘仿真数据传输。我正在尝试处理条形码阅读器每次读取代码时触发的keydown事件,但是系统会触发句柄功能,但我找不到告诉我键码的事件数据。
我在应用程序启动时使用该代码:
document.addEventListener('keydown',
function(e){
//Here should come the data but e.keycode everytimes comes with 0
});
我在上面的代码中说,事件var(e)总是没有关于触发事件的信息,就像一个常规事件对象,但没有关键事件的相关信息。
我将非常感谢任何帮助或建议。
提前致谢
答案 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);