
程序开发 js获取USB扫码枪数据
前言 找了很多相关的教程不太好用,汲取各家之长总结精简了一下 原理 扫码枪扫描到的条形码每一位会触发一次onkeydown事件 比如扫描条码位‘1234567890’的条形码,会连续执行10次onkeydown事件 条码扫描到最后一位,会直接触发Enter 代码 支持vue data() { return { nextCode: '', lastTime: '', code: '' } }, created() { // 添加键盘监听事件 document.addEventListener('keydown', this.getBarCode) }, // 销毁页面时销毁监听 destroyed() { document.removeEventListener('keydown', this.getBarCode) }, methods: { // 通过扫码枪获取条形码 getBarCode(e) { let nextCode let nextTime = '' const lastTime = this.lastTime let code = this.code if (window.event) { // IE nextCode = e.keyCode } else if (e.which) { // Netscape/Firefox/Opera nextCode = e.which } nextTime = new Date().getTime() // 字母上方 数字键0-9 对应键码值 48-57; 数字键盘 数字键0-9 对应键码值 96-105 if ( (nextCode >= 48 && nextCode <= 57) || (nextCode >= 96 && nextCode <= 105) ) { const codes = { '48': 48, '49': 49, '50': 50, '51': 51, '52': 52, '53': 53, '54': 54, '55': 55, '56': 56, '57': 57, '96': 48, '97': 49, '98': 50, '99': 51, '100': 52, '101': 53, '102': 54, '103': 55, '104': 56, '105': 57 } nextCode = codes[nextCode] nextTime = new Date().getTime() } // 第二次输入延迟两秒,删除之前的数据重新计算
最新评论
北海の猫
博主您好!技术猫博客最近搬家了,前来通知小主更新一下域名及名称(顺便再来踢个门)
名称:Kitten's Blog
地址:http://blog.skillcat.cn
简介:设计成就梦想,细节成就品质。
图标:http://cn.gravatar.com/avatar/59cb46c14fe1df1292ca09a761b7cbe3
评:留言崔先森
效果真的一般般~
评:Linux QQ全新回归崔先森
deepin.用得挺爽?
评:在荣耀笔记本(Linux版)中拥有深度应用商店,几步就搞定!Jason
[img] /wp-content/uploads/comments/2162/20191017093509309002.jpg[/img] 测试图片上传
评:Vultr怎么解除信用卡绑定?挖站否
评论可以上传图片了?
评:Vultr怎么解除信用卡绑定?delong
中文域名好记
评:留言崔先森
哟,这次主题很牛逼啊~
评:留言saber
和qi一样的想法…
评:jQuery tab选项卡中的瀑布流挖站否
又换域名了?
评:jQuery tab选项卡中的瀑布流xiaomo
懂就是好,会玩
评:宝塔面板使用WebHook 更新nuxt网站