除了通过时间间隔区分,有人知道怎么区分扫描枪输入和键盘输入吗js 一种方法是通过事件对象的属性来判断。扫描枪输入通常会在输入完成后立即触发一个`keyup`事件,而键盘输入则是在按下和释放键盘时分别触发`keydown`和`keyup`事件。因此,可以通过判断事件对象的`keyCode`和`which`属性是否为0来区分扫描枪输入和键盘输入,写下代码
document.addEventListener('keydown', function(event) {
if (event.keyCode === 0 && event.which === 0) {
console.log('扫描枪输入');
} else {
console.log('键盘输入');
}
});
这段代码监听了keydown事件,并根据事件对象的keyCode和which属性来判断输入类型。如果两个属性都为0,则认为是扫描枪输入;否则是键盘输入。当然,这种判断方法并不是百分之百准确,因为有些扫描枪也会模拟键盘输入,但对大部分情况来说应该是可行的。
原文地址: https://www.cveoy.top/t/topic/sTO 著作权归作者所有。请勿转载和采集!